SpringMVC视图中的tiles视图

时间:2020-12-15 23:54:19

  Apache Tiles是一个模板框架,为创建Web页面提供了一种模板机制,它能将网页的布局和内容分离。它用模板定义网页布局,每个页面模板都是一个简单的 JSP 页。执行时,Tiles 将会用相应的内容来替换占位符,因此,创建整个页面即形成布局。
  首先在Helloworld-servlet,xml中将TilesViewResolver注册成一个bean:
  

<bean class="org.springframework.web.servlet.view.tiles2.TilesViewResolver"/>

  其次,配置TilesConfigurer来解析定义

<beanid="tilesConfigurer" 
class="org.springframework.web.servlet.view.tiles2.TilesConfigurer">

<propertyname="definitions">
<list>
<value>/WEB-INF/views/**/views.xml</value>
</list>
</property>
</bean>

  tiles定义
  

<?xml version="1.0" encoding="UTF-8"?>
<!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>
<definition name="defaultTemplate" template="/WEB-INF/tiles/classic.jsp">//template属性是指模板的路径
<put-attribute name="title" value="Hello world I'm title" />//put-attribute表示加入模板的模块,value指向其路径
<put-attribute name="menu" value="/WEB-INF/tiles/menu.jsp"/>
<put-attribute name="footer" value="/WEB-INF/tiles/footer.jsp" />
</definition>
<definition name="home" extends="template">//表示继承该模板
<put-attribute name="content" value="/WEB-INF/views/home.jsp"/>
</definition>
</tiles-definitions>