- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
J2EE:SiteMesh(页面装饰器)简介及应用
最近公司做项目,需要用到SiteMesh框架,坦白的说之前没怎么用过,所以在网上查看了许多相关资料,自己总结了一下,希望对大家有所帮助。
SiteMesh是OpenSymphony团队开发的JEE框架之一,它是一个非常优秀的页面装饰器框架,它通过对所有的用户请求进行过滤,并对服务器向客户端响应也进行过滤,从而给原始的服务器响应加入一定的装饰,可以是header,footer等,然后将经过装饰后的页面送回浏览者.对于被装饰的页面而言,它无需知道自身被谁装饰,也无从知道自身被谁装饰,SiteMesh通过配置文件来配置指定的装饰器,用于过滤某些页面,则该装饰器会装饰这些页面,从而提供更好的页面效果,通过SiteMesh的页面装饰,可以提供更好的代码复用,所有的页面装饰效果耦合在目标页面中,无需使用include指令来显式包含装饰效果,目标页面与装饰页面完全分高.提供更好的解耦,而且可以应用中所有的页面都使用相同的装饰页面,整个Web应用会有更统一的风格,会提供更好的整体效果.
SiteMesh通过Filter来截取request和response,然后给原始的页面加入一定的装饰,再把结果返回给客户端.
SiteMesh应用
1. 定义装饰器页面
装饰器页面就是一个普通的JSP页面,但这个页面包含了一些SiteMesh标签,看下面的页面代码:
%@ page contentType=text/html; charset=GBK%
%@ taglib uri=/sitemesh/decorator prefix=decorator%
html
head
titledecorator:title default=第一个装饰器页面//title
decorator:head/
/head
body
SiteMeshhr
decorator:body /
hr
div style=font:9pt align=centerSiteMesh/div
/body
/html
? 它与传统的JSP页面并没有太大的区别,它包含了三个SiteMesh标签:
1,:将被装饰页面的title部分插入该页面的此处.
2,:将被装饰页面的head部分插入该页面的此处.
3,:将被装饰页面的body部分插入该页面的此处.
2. 配置装饰器页面
下面在配置文件中配置该装饰器页面,配置用WEB-INF\decorators.xml文件,内容如下:
?xml version=1.0 encoding=GBK?
!-- defaultdir指定装饰器文件所在的路径 --
decorators defaultdir=/decorators
!-- 指定main装饰器,该装饰器使用main.jsp页面 --
decorator name=main page=main.jsp
!-- 使用main装饰器装饰所有的JSP页面 --
pattern*/pattern
/decorator
/decorators
3. 更复杂的装饰器页面
下面将在装饰器页面中使用其他装饰器,也就是装饰器页面中嵌套装饰器页面,通过这种方式可以提供更高程度的解耦.在装饰器页面中导入其他装饰器页面使用如下标签:
看如下的装饰器页面代码:
%@ page contentType=text/html; charset=GBK%
%@ taglib uri=/sitemesh/decorator prefix=decorator%
%@ taglib uri=/sitemesh/page prefix=page%
html
head
titledecorator:title default=SiteMesh的装饰器页//title
link href=decorators/main.css rel=stylesheet type=text/css
decorator:head/
/head
body
table width=100% height=100%
tr
td valign=top
!-- 引入一个页面,临时指定所用的装饰器 --
page:applyDecorator page=/book.html name=panel /
page:applyDecorator page=/link.html name=panel /
/td
td width=100%
table width=100% heigh
您可能关注的文档
- OFFICE 高级应用 教学大纲(1).doc
- OWASP要素增强Web应用程序安全2007.doc
- PCB板完整电磁资讯的获取及应用.pdf
- Palm+webOs应用程序开发.pdf
- Photoshop图形处理软件应用.ppt
- ppt应用技巧汇总.doc
- PS通道应用之三.pdf
- PS通道应用之十四.pdf
- PXE无盘网络的应用技巧.doc
- qq空间最近出了一款应用.doc
- JJF(烟草)4.2-2024烟草及烟草制品 连续流动法测定常规化学成分测量不确定度评定指南 第2部分:总植物碱.pdf
- JJG(烟草)33-2024卷烟爆珠强度测试仪检定规程.pdf
- JJF(烟草)4.5-2024烟草及烟草制品 连续流动法测定常规化学成分测量不确定度评定指南 第5部分:钾.pdf
- 计量规程规范 JJF(烟草)4.5-2024烟草及烟草制品 连续流动法测定常规化学成分测量不确定度评定指南 第5部分:钾.pdf
- JJF(烟草)4.4-2024烟草及烟草制品 连续流动法测定常规化学成分测量不确定度评定指南 第4部分:氯.pdf
- 《JJF(烟草)4.4-2024烟草及烟草制品 连续流动法测定常规化学成分测量不确定度评定指南 第4部分:氯》.pdf
- 计量规程规范 JJF(烟草)4.4-2024烟草及烟草制品 连续流动法测定常规化学成分测量不确定度评定指南 第4部分:氯.pdf
- 《JJF(烟草)4.1-2024烟草及烟草制品 连续流动法测定常规化学成分测量不确定度评定指南 第1部分:水溶性糖》.pdf
- 南京金牛湖两山产业投资开发有限公司招聘笔试题库2024.pdf
- 瑞金市乡村发展投资建设有限公司招聘笔试题库2024.pdf
文档评论(0)