快速业务通道

Struts和Tiles辅助基于组件的开发 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-15
向 http://localhost:8080/ex2。您应该会看到“Hello, World”页面。

目录结构和文件的说明

在 EX2_INSTALL/src/web 目录下有不少文件,乍看起来可能会把人搞糊涂。以下是给大家的一些指导 。

profileInput.JSP 和 profileOutput.jsp 页面是页面主体 panel3 的内容;它们驱动这一特殊应用 程序。在 tiles-components 下有页面的各种组件,而在 tiles-layouts 下是有关布局的 HTML 代码。 我喜欢这样的组织安排,因为这使得对不同的用户角色有不同的布局,并在一个中心位置中保存所有视图 组件。Tiles 可以让您以您希望的任何方式安排文件,只要您在 tiles-defs.xml 文件中指定了如何组织 事物,所以使用那些最适合于您工作的事物。

如果您已看过 EX2_INSTALL 目录,您很可能会说:“这里要做些什么呢?有好多文件。”与大多数强 调更有序和结构化程度更高的技术一样,对于 Struts 和 Tiles,在一开始需要在管理文件上花些工夫。 对于只有少许页面的小项目,这一额外开销可能微不足道。然而,随着项目变大,Struts 和 Tiles 方法 逐渐会显示其优越性。让我们一点点地体会吧!这里我不想讨论 EX2_INSTALL/src/WEB-INF/web.xml;尽 管这个文件实质上与其示例 1 中相对应的文件不同,而且大多数行都是样板,但理解这些设置对于着手 开发并不太重要。

在 EX2_INSTALL/src/WEB-INF/struts-config.xml 中,自先前有关 Struts 的文章以来重要的更改有 在 <form-beans/> 节中 DynaActionForm 的使用及在 <action-mappings/> 节中 tile 作 为目标的使用。在 Struts 的以前版本中,您必须为每个所使用的表单 bean 定义一个 Java 类。仅当不 同的 HTML 表单共享域时,才可以在这些表单之间共享表单 bean。总之,每个表单 bean 需要有一个 Java 类是一个非常麻烦的要求。现在,您可以在 struts-config.xml 文件中指定表单 bean 的特性,而 且是 迅速地! 不必有保存 Java 类的单独文件,就能自动创建这种 bean。象处理 Hashtable 对象一样 ,用值的强类型对象来处理动态表单 bean。至于操作映射,一旦确定将 Tiles 库合并到 Struts 分发版 之后,那么指定一个 tile 作为目标,就完全是增加一项逻辑而已。您会在概要信息表单的操作映射中看 到 tile 目标(tile.profileInput 和 tile.profileOutput)。在 input 属性和 path 属性中指定 tile。注:可以指定 tile 目标弥补了我在分析以页面为中心的模型中提到的更改文件名和位置中的缺陷 :tile 目标是虚拟名称或逻辑名称,而不是物理名称。

现在,进入激动人心的部分。让我们看一下 EX2_INSTALL/src/WEB-INF/tiles-defs.xml。

在 <definition/> 标记中指定 tile。您可以将定义命名为任何希望的名称,而且 name 属性 不必是与 path 属性匹配的子字符串。我为第一个定义选择了名称 rootLayout ,以表明它是应用程序中 的页面要遵循的基本布局。注:路径是 /tiles-layout/rootLayout.jsp。如果查看 EX2_INSTALL/src/web 下的 /tiles-layout/rootLayout.jsp,您会看到这种布局是多么的简单整齐。用 户界面的设计人员会“爱上它”。还请注意:它不包含任何代码,所以用户界面设计人员在进行更改时不 必担心破坏什么。

rootLayout.jsp 中的 <tiles:insert/> 标记对应于 tiles-defs.xml 中 rootLayout 定义内 的 <put/> 标记。注:每个 <tiles:insert attribute="x"/> 标记都有一个表示逻辑名称 的属性。每个逻辑名称映射至通过在 tiles-defs.xml 内的 <definition/> 中使用 <put name="x" value="y"/> 标记指定的名称和值。通过在 rootLayout.jsp 页面中使用逻辑名称,而非物 理名称

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号