2008年(60)
分类: Java
2008-04-21 13:04:56
概况
传统的GUI工具包,如Java AWT和Java Swing,都提供了一些功能强大的布局管理器,它们指定各个视图组件在窗口中的分布位置。布局管理器有助于创建复合式的复杂界面,一个复合式界面由一些简单的基本界面组成。利用布局管理器来创建GUI界面有以下优点:
·可重用性:基本界面可以被重用,组合成各种不同的复合式界面
·可扩展性:可以方便的扩展基本界面,从而创建更复杂的界面
·可维护性: 每个基本界面之间相互独立,当复合式界面中的局部区域发生变化,不会影响其它区域
不幸的是,JSP技术本身并没有直接提供布局或布局管理器。为了简化Web页面的开发,提高可重用性和可扩展性,Struts Tiles框架提供了一种模板机制,模板定义了网页的布局,同一模板可以被多个Web页面共用。此外,Tiles框架还允许定义可重用的Tiles组件,它可以描述一个完整的网页,也可以描述网页的局部内容。简单的Tiles组件可以被组合或扩展成为更复杂的Tiles组件。
本章由浅到深的介绍了创建复合式Web页面的几种方案。与采用基本的JSP语言来创建Web页面相比,Tiles框架大大提高了视图层程序代码的可重用性、可扩展性和可维护性。不过,使用Tiles框架也增加了开发视图的难度和复杂度。如果Web应用规模很小,界面非常简单,不妨直接采用基本的JSP语言来编写网页。对于大型复杂的Web应用,可以充分运用Tiles框架的优势,从整体上提高网页开发的效率。
Tiles框架特性和内容
在开发Web站点时,常常要求同一站点的所有Web页面保持一致的外观,比如有相同的布局、页头、页尾和菜单。
采用基本的JSP语句创建复合式网页
创建动态Web页面的最基本的办法是为每个页面创建独立的JSP文件。
采用JSP的include指令创建复合式网页
为了减少代码的冗余,可以把index.jsp和product.jsp中相同部分放在单独的JSP文件中,然后在index.jsp和product.jsp文件中通过JSP include指令把其他JSP文件包含进来。
采用Tiles:Insert标签创建复合式网页
Tiles标签库的tiles:insert标签和JSP include指令具有相同的功能,也能把其他的JSP页面插入到当前页面中。
采用Tiles模板创建复合式网页
尽管使用了tiles:insert标签,index.jsp和product.jsp文件还是存在很多的重复代码。为了提高Web页面的可重用性和可维护性,可以引入Tiles的模板机制。
Tiles组件的基本使用方法
为了最大程度的提高代码的可重用性和灵活性,Tiles框架引入了Tiles组件的概念。Tiles组件可以代表一个完整的网页,也可以代表网页的一部分。简单的Tiles组件可以组合成复杂的Tiles组件,或被扩展为复杂的Tiles组件。
解析Tiles组件的组合与扩展
Tiles组件是一种可重用的组件。可以象搭积木一样,把简单的Tiles组件组装成复杂的Tiles组件,例如,可以把名为"index-definition"的Tiles组件的左边部分拆分为独立的Tiles组件,名为"sidebar-definition"。