spring3 集成tiles3

截止目前最新的Tiles版本是Tiles3。
如今,网站一般分为可重复使用的模板正在呈现不同的网页之间的的。例如,一个网站中包含的页眉,页脚,菜单等项目仍然通过了该网站相同,并给它一个共同的外观和感觉。这是很难很难的代码在每一个网页,如果以后需要改变是不是所有的页面需要修改。因此,我们使用模板化机制。我们创建一个共同的页眉,页脚,菜单页,其中包括在每一页。

TilesSupport插件允许模板和组件。事实上,这两种机制是相似的:你定义页面的某些部分(a ”Tile”)组装建立另一部分或整页。 A部分参数,使动态内容,并且可以在Java语言中的一种方法。 Tiles是用来保持一致的外观和感觉整个Web应用程序的所有网页模板系统。增加模板的可重用性和减少代码重复。

是指在一个中央配置文件的网​​站的一个共同的布局,这种布局可以延长Web应用程序的所有网页

需要有以下几个基本jar包:




1.首先在Spring - servlet.xml 中定义Tiles ,需要添加以下代码:
<bean id="viewResolver"
class="org.springframework.web.servlet.view.UrlBasedViewResolver">
<property name="viewClass">
<value>
org.springframework.web.servlet.view.tiles3.TilesView
</value>
</property>
</bean>

<bean id="tilesConfigurer" class="org.springframework.web.servlet.view.tiles3.TilesConfigurer">
<property name="definitions">
<list>
<value>/WEB-INF/tiles.xml</value>
</list>
</property>
</bean>

注意:如果tiles 版本是2 的,代码中org.springframework.web.servlet.view.tiles3.TilesView 改成-->org.springframework.web.servlet.view.tiles2.TilesView

org.springframework.web.servlet.view.tiles3.TilesConfigurer 改成--> org.springframework.web.servlet.view.tiles2.TilesConfigurer



2.定义tiles.xml
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE tiles-definitions PUBLIC
"-//Apache Software Foundation//DTD Tiles Configuration 3.0//EN"
"http://tiles.apache.org/dtds/tiles-config_3_0.dtd">

<tiles-definitions>

<!-- Default Main Template -->
<definition name="base.definition" template="/jsp/templates/layout.jsp">
<put-attribute name="title" value="" type="string" />
<put-attribute name="header" value="/jsp/templates/header.jsp" />
<put-attribute name="footer" value="/jsp/templates/footer.jsp" />
<put-attribute name="menu" value="/jsp/templates/menu.jsp" />
<put-attribute name="body" value="" />
</definition>

<definition name="contact" extends="base.definition">
<put-attribute name="body" value="/jsp/contact.jsp" />
</definition>
</tiles-definitions>

这里,tiles.xml我们定义一个模板base.definition。此布局包含的头,标题,身体,菜单和页脚等属性。布局是那么的联系页面的扩展和新的定义。我们已经覆盖默认的布局,并改变了机构和标题的内容。

这里,tiles.xml我们定义一个模板base.definition。此布局包含的头,标题,身体,菜单和页脚等属性。我们已经覆盖默认的布局,并改变了机构和标题的内容。



3.创建视图,这里主要讲下layout.jsp


<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<table border="1" cellpadding="2" cellspacing="2" align="center">
<tr>
<td height="30" colspan="2"><tiles:insertAttribute name="header" />
</td>
</tr>
<tr>
<td height="250"><tiles:insertAttribute name="menu" /></td>
<td width="350"><tiles:insertAttribute name="body" /></td>
</tr>
<tr>
<td height="30" colspan="2"><tiles:insertAttribute name="footer" />
</td>
</tr>
</table>

</body>
</html>


4.效果如下

[img]http://my.iteye.com/admin/picture/126275#[/img]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值