java-其中哪一种是使用磁贴的更好方法
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java-其中哪一种是使用磁贴的更好方法,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2339字,纯文字阅读大概需要4分钟。
内容图文
![java-其中哪一种是使用磁贴的更好方法](/upload/InfoBanner/zyjiaocheng/675/3608e8f7c51847898a7dea95853f8147.jpg)
问题:我有两个具有相同结构的相同页面home.jsp和contact.jsp.它们仅在正文内容和标题上有所不同.我想使用tile框架创建一个Layout页面,并将代码重用于两个JSP.控制器框架尚未确定,可能是Spring MVC 3或Struts 2.
解决方案A:直接从控制器/动作类调用JSP文件/视图.
我在tile.xml中编写一个定义,例如:
<definition name="baseLayout" template="/WEB-INF/jsp/layout/baseLayout.jsp">
<put-attribute name="title" value="" />
<put-attribute name="header" value="/WEB-INF/jsp/includes/header.jsp"/>
<put-attribute name="body" value="" />
</definition>
现在在baseLayout.jsp中:
<html>
<head><title><tiles:insertAttribute name="title"/></title></head>
<body>
<div class="wrapper">
<div class="header"><tiles:insertAttribute name="header"/></div>
<div class="body"><tiles:insertAttribute name="body"/></div>
</div>
</body>
</html>
现在在home.jsp中
<tiles:insertDefinition name="baseLayout">
<tiles:putAttribute name="title">
Title for home page
</tiles:putAttribute>
<tiles:putAttribute name="body">
Content for home page
</tiles:putAttribute>
</tiles:insertDefinition>
与contact.jsp类似:
<tiles:insertDefinition name="baseLayout">
<tiles:putAttribute name="title">
Title for contact page
</tiles:putAttribute>
<tiles:putAttribute name="body">
Content for contact page
</tiles:putAttribute>
</tiles:insertDefinition>
解决方案B:从cotrollers / action类中调用不同JSP文件的tile定义.这种方法需要为我要编写的每个JSP文件定义一个tile.因此共有3个tile定义(一个用于baseLayout,另外两个用于home和contact).
Tiles.xml:
<definition name="baseLayout" template="/WEB-INF/jsp/layout/baseLayout.jsp">
<put-attribute name="title" value="" />
<put-attribute name="header" value="/WEB-INF/jsp/includes/header.jsp"/>
<put-attribute name="body" value="" />
</definition>
<definition name="home" extends="baseLayout">
<put-attribute name="title" value="Title for home page" />
<put-attribute name="header" value="/WEB-INF/jsp/home.jsp"/>
</definition>
<definition name="contact" extends="baseLayout">
<put-attribute name="title" value="Title for contact page" />
<put-attribute name="header" value="/WEB-INF/jsp/contact.jsp"/>
</definition>
baseLayout.jsp:与**解决方案A **相同
home.jsp:主页内容
contact.jsp:联系页面的内容
我想建议我应采用上述哪种方法.
解决方法:
解决方案B是实施的最佳方法,
>您将拥有单独的样式模板,您可以在以后将其重用,以供其他jsp使用,而不会像解决方案A那样弄乱jsp中的代码.
>理解后,第二种方法更加清晰,并且遵循一个通用标准.
内容总结
以上是互联网集市为您收集整理的java-其中哪一种是使用磁贴的更好方法全部内容,希望文章能够帮你解决java-其中哪一种是使用磁贴的更好方法所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。