使用Struts2的 Titles做页面布局

我们可以使用struts2的titles来做页面基本布局,使得页面看起来统一一致:包括<tiles:insertAttribute name="body"/>和 <tiles:getAsString name="title"></tiles:getAsString>

 

<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="tiles"  uri="http://tiles.apache.org/tags-tiles"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML>
<HEAD>
<title>
   <tiles:getAsString name="title"></tiles:getAsString>
</title>
</head>
<BODY>
		
<div id="body"> 
			<tiles:insertAttribute name="body"/>
</div>
<div id="footer"> 
	<div class="footcontent">
	COPYRIGHTS 2012 . ALL RIGHTS RESERVED.
	</div>
</div>
</BODY>
</html>

 

同时在配置文件titles.xml中,配置如下:

 

<?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE tiles-definitions PUBLIC
       "-//Apache Software Foundation//DTD Tiles Configuration 2.0//EN"
       "http://tiles.apache.org/dtds/tiles-config_2_0.dtd">

<tiles-definitions>
  <definition name="popupNullLayout" template="/_layout/popup_layout.jsp">
      <put-attribute name="title"  value="EQUI"/>
      <put-attribute name="body"   value="/body.jsp"/>
  </definition>
  <definition name="indexPack.index" template="/_layout/mainLayout.jsp">
      <put-attribute name="title"  value="TEST"/>
      <put-attribute name="body"   value="/_template/main/main.html"/>
  </definition>
</tiles-definitions>

 

其中:

      <put-attribute name="title"  value="EQUI"/>
      <put-attribute name="body"   value="/body.jsp"/>

 

title就是我们在html页面中需要读取的<tiles:getAsString name="title"></tiles:getAsString>;例如:在<put-attribute name="title"  value="EQUI"/>中将title的value值设置成“EQUI”,那么所有以这个页面为模版的页面的title就都是EQUI;


body就是html中需要插入的<tiles:insertAttribute name="body"/>;例如:使用<put-attribute name="body"   value="/body.jsp"/>,即是value值设置的页面都会显示在<tiles:insertAttribute name="body"/>设定的位置上。

 

 

你可能感兴趣的:(struts2)