初学 tiles 框架
老师也没教全 如下有(公有的) :
head.jsp
menu.jsp
footer.jsp tiles_defs.xml中:
<definition name="index_def" path="/layout.jsp">
<put name="head" value="head.jsp"/>
<put name="menu" value="menu.jsp"/>
<put name="body" value=""/>
<put name="footer" value="footer.jsp"/>
</definition> <definition name="a_def" extends="index_def">
<put name="body" value="a_body.jsp" /> 重写主框架的put或添加
</definition><definition name="b_def" extends="index_def">
<put name="body" value="b_body.jsp" /> 重写主框架的put或添加
</definition>
需要应该用的有2个页面:
a.jsp 和 b.jsp进入a.jsp中 就一句:
<tiles:insert definition="a_def"/>
用来加载框架 而主体内容在a_body.jsp页面中当超链接到b.jsp中 也就一句:
<tiles:insert definition="b_def"/>
用来加载框架 而主体内容在b_body.jsp页面中这样1个页面需要2个jsp文件来完成 是不是非常不方便啊所以我想问问 正规的<tiles>框架应该是怎么样写的
老师也没教全 如下有(公有的) :
head.jsp
menu.jsp
footer.jsp tiles_defs.xml中:
<definition name="index_def" path="/layout.jsp">
<put name="head" value="head.jsp"/>
<put name="menu" value="menu.jsp"/>
<put name="body" value=""/>
<put name="footer" value="footer.jsp"/>
</definition> <definition name="a_def" extends="index_def">
<put name="body" value="a_body.jsp" /> 重写主框架的put或添加
</definition><definition name="b_def" extends="index_def">
<put name="body" value="b_body.jsp" /> 重写主框架的put或添加
</definition>
需要应该用的有2个页面:
a.jsp 和 b.jsp进入a.jsp中 就一句:
<tiles:insert definition="a_def"/>
用来加载框架 而主体内容在a_body.jsp页面中当超链接到b.jsp中 也就一句:
<tiles:insert definition="b_def"/>
用来加载框架 而主体内容在b_body.jsp页面中这样1个页面需要2个jsp文件来完成 是不是非常不方便啊所以我想问问 正规的<tiles>框架应该是怎么样写的
解决方案 »
- MyEclipse突然打不开
- net.sf.jasperreports.engine.JRException: Error loading object from file
- MVC 请求高手解释一下
- 编写程序能让tomcat自动运行吗
- spring和struts整合 使用MappingDispatchAction spring的xml文件如何配置
- 为什么refreshRow()不能刷新结果集?
- xml初级问题
- web services学习求助!100分大放送
- 请问jsp网站,这样配置行不行?(JDK+resin)
- JBuilder和Weblogic的一个问题,在线等待,马上结账。
- script脚本判断怎么写?
- 急!hibernate不能生成dao?
1、用<%@include file="">或用<jsp:include
2、用tiles将公共部分做成模板。用1的缺点是,如果多个页面的头部和底部是相同的,就得分别写到两个文件中,这两个文件分别用可视化编辑器打开时,它就不认为是一个有效的文件,因为很多标签只有开头没有结尾,或反之。如果相同部分再复杂些,拆出来的公用文件很可能让人看不懂。而tiles不存在这些问题
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title><tiles:insertAttribute name="title"/></title>
<tiles:insertAttribute name="head" ignore="true"/>
</head>
<body>
<tiles:insertAttribute name="main" ignore="true"/>
</body>
</html>
使用模板:
<%@page contentType="text/html; charset=UTF-8"%>
<tiles:insertTemplate template="mytemplate.jsp">
<tiles:putAttribute name="title">标题</titles:putAttribute>
<tiles:putAttribute name="head">这部分内容会加到head中</titles:putAttribute>
<tiles:putAttribute name="main">这部分内容会加到body中</titles:putAttribute>
</tiles:insertTemplate>