JSP页面的统一布局(Layout)与外观(Look and Feel)
来源:互联网 发布:www.js lottery.com 编辑:程序博客网 时间:2024/05/16 05:46
有两个页面first.jsp和second.jsp。
first.jsp
<html:html><body><table><tr><td><P align=”center”><B>Welcome</B></P></td></tr><tr><td><B>Body for First JSP</B></td></tr><tr><td><P align=”center”>Copyright © 2005-06</P></td></tr></table><body></html:html>
second.jsp
<html:html><body><table><tr><td><P align=”center”><B>Welcome</B></P></td></tr><tr><td><B>Body for Second JSP</B></td></tr><tr><td><P align=”center”>Copyright © 2005-06</P></td></tr></table><body></html:html>
可以看出其中header和footer部分明显重复编码了,而且不好维护,一旦要发生改变,两个页面都需要改。现在用jsp的include来改进:
把header和footer部分抽象出来,放进两个文件:
header.jsp
<P align=”center”>Welcome</P>
footer.jsp
<P align=”center”>Copyright © 2005-06</P>
然后在first.jsp和second.jsp中用include来静态(<%@include/>)/动态<jsp:include/>导入header和footer的内容:
first.jsp
<html:html><body><table><tr><td><jsp:include page="/Header.jsp" /></td></tr><tr><td><B>Body for First JSP</B></td></tr><tr><td><jsp:include page="/Footer.jsp" /></td></tr></table><body></html:html>
second.jsp
<html:html><body><table><tr><td><jsp:include page="/Header.jsp" /></td></tr><tr><td><B>Body for Second JSP</B></td></tr><tr><td><jsp:include page="/Footer.jsp" /></td></tr></table><body></html:html>
这样还存在一个问题,就是两个页面的layout重复编码了,不好维护。于是引入jsp template来解决这个问题,这里用Apache Titles作为示例:
layout.jsp
<html:html><body><table><tr><td><tiles:insert attribute="header" /></td></tr><tr><td><tiles:insert attribute="body" /></td></tr><tr><td><tiles:insert attribute="footer" /></td></tr></table><body></html:html>然后所有的页面都共享这一个layout.jsp作为布局和外观的模板。
这种解决方案有很多,
- 除了Titles之外,JSP2.0本身也提供这样的模板功能,参考http://stackoverflow.com/questions/1296235/jsp-tricks-to-make-templating-easier
- 另外SiteMesh也是一个很好的装饰框架,参考http://www.allapplabs.com/tiles/tiles_web_page_layouts.htm
- 另外JSF的facelets/xhtml也提供了一种类似的模板机制,使得JSF2.0的用户可以不用借助第三方框架就可以统一布局和外观。
- 其他的框架???
这篇文章很好的阐述了本文的思路:http://www.allapplabs.com/tiles/tiles_web_page_layouts.htm
注:Layout可以借助HTML中的Frame/iFrame,Table,Div等方法来创建。
- JSP页面的统一布局(Layout)与外观(Look and Feel)
- Java 用Look And Feel打造绚丽的界面外观!
- 示例:界面外观Examples:Look And Feel
- Look and Feel---JAVA界面(换肤术)
- Look and Feel---JAVA界面(换肤术)
- Look and Feel---JAVA界面(换肤术)
- Look and Feel---JAVA界面(换肤术)
- Look and Feel---JAVA界面(换肤术)
- Java swing皮肤(look and feel)
- 怎么使用Skin Look And Feel(1)
- (swing读书笔记)Swing Look And Feel(1)
- (swing读书笔记)Swing Look And Feel(2)
- (swing读书笔记)Swing Look And Feel(3)
- (swing读书笔记)Swing Look And Feel(4)
- Java swing皮肤(look and feel)大全
- 外观数列(Look-and-say sequence)
- 如何改变netbeans的look and feel
- Office2003与Visual Studio2005 的Look & Feel
- 27讲 apache服务器使用及配置② apache目录结构
- 常用排序算法
- 百度2014校招 深圳软件研发岗
- java大数(2013长春网络赛)--hdu4762
- 提取出某日访问百度次数最多的那个IP(Java实现)
- JSP页面的统一布局(Layout)与外观(Look and Feel)
- 28讲 apache服务器使用及配置③ apache虚拟目录
- Ubuntu 下构建Qt5开发环境
- 【Win7下教你更改平板显示器缩放】
- 百度2014校园招聘南京笔试题
- 简单的修改IDT,实现hook page_fault中断处理进程
- OpenCV第二节 显示图像
- 新生代、老年代
- wallet