tiles+springmvc 整合使用

整合步骤

1、增加tiles的jar包(包含tld文件)

    <dependency>
            <groupId>org.apache.tiles</groupId>
            <artifactId>tiles-extras</artifactId>
            <version>3.0.5</version>
        </dependency>

2、配置tiles的bean,貌似需要增加到web服务器创建时即创建的spring配置文件中,即需要配置到web.xml文件中</init-param> 为<load-on-startup> 的。如下的dispatcher-servlet.xml文件中配置bean

	<servlet>
		<servlet-name>springmvc</servlet-name>
		<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
		<init-param>
			<param-name>contextConfigLocation</param-name>
			<param-value>
           <!-- dispatcher-servlet.xml文件路径 -->
           classpath:spring/dispatcher-servlet.xml
           </param-value>
		</init-param>
		<load-on-startup>1</load-on-startup>
	</servlet>

3、 在dispatcher-servlet.xml中下增加tiles配置bean的代码。其中/WEB-INF/tiles/tiles-definitions.xml 为tiles配置文件的路径。

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

	<bean id="viewResolver"
		class="org.springframework.web.servlet.view.UrlBasedViewResolver">
		<property name="viewClass" value="org.springframework.web.servlet.view.tiles3.TilesView" />
	</bean>

4、编写配置文件tiles配置文件 tiles-definitions.xml

其中defaultTemplate为配置首页的定义,。

下面的<definition name="*" 使用了通配符,结合<put-attribute name="body" value="/WEB-INF/views/{1}.jsp" />    这个{1} 即代表请求的原始页面,比如http://localhost:8080/slark/blog   ,则这里{1}会被替换为blog,即相当于在原blog.jsp页面下增加了一个footer部分。

<tiles-definitions>

   <definition name="defaultTemplate" template="/WEB-INF/tiles/tmplate/defaultLayout.jsp">
      <put-attribute name="nav" value="/WEB-INF/tiles/tmplate/nav.jsp" />
      <put-attribute name="body" value="/WEB-INF/tiles/tmplate/body.jsp" />
      <put-attribute name="footer" value="/WEB-INF/tiles/tmplate/footer.jsp" />
  </definition>

     <definition name="*" template="/WEB-INF/tiles/tmplate/commonLayout.jsp">
      <put-attribute name="body" value="/WEB-INF/views/{1}.jsp" />
      <put-attribute name="footer" value="/WEB-INF/tiles/tmplate/footer.jsp" />
  </definition>
</tiles-definitions>

配置模板页面,下图为commonLayout.jsp 的一部分。body即为本来要请求的页面,如上例中的blog.jsp,然后footer部分为tmplate文件夹中预先写好的可重用的组件页面footer.jsp

<body>
    <div>
        <div>
            <tiles:insertAttribute name="body" />
        </div>
        <div>
            <tiles:insertAttribute name="footer" />
        </div>
    </div>
</body>

附上官方文档地址:http://tiles.apache.org/framework/tutorial/advanced/utils.html

时间: 2024-07-31 18:21:51

tiles+springmvc 整合使用的相关文章

Springmvc整合tiles框架简单入门示例(maven)

Springmvc整合tiles框架简单入门示例(maven) 本教程基于Springmvc,spring mvc和maven怎么弄就不具体说了,这边就只简单说tiles框架的整合. 先贴上源码(免积分下载): http://download.csdn.net/detail/zhangbing2434/9435460(这里用的是Idea,eclipse,导入的时候可能会有些差异) 1.tiles依赖的jar包:     maven代码: <dependency> <groupId>

spring和springMVC整合注解版helloworld

整合的之前需要从官网上下载spring完整的jar包,我下载的是spring-framework-3.2.2.RELEASE.整合步骤如下: 1.在eclipse中新建一个web项目,将下载的spring的jar包拷入lib目录下,但是spring启动的时候依赖一个commons-logging-1.1.jar的jar包,你需要额外的下载. 2.编写web.xml,配置spring的分发器和spring配置文件的位置.具体内容如下: <servlet> <servlet-name>

Dubbo与Zookeeper、SpringMVC整合和使用(负载均衡、容错) 【转】

互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,Dubbo是一个分布式服务框架,在这种情况下诞生的.现在核心业务抽取出来,作为独立的服务,使前端应用能更快速和稳定的响应. 第一:介绍Dubbo背景 大规模服务化之前,应用可能只是通过RMI或Hessian等工具,简单的暴露和引用远程服务,通过配置服务的URL地址进行调用,通过F5等硬件进行负载均衡. (1) 当服务越来越多时,服务URL配置管理变得非常困难,F5硬件负载均衡器的单点压力也

Dubbo与Zookeeper、SpringMVC整合和使用(负载均衡、容错)(转)

互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,Dubbo是一个分布式服务框架,在这种情况下诞生的.现在核心业务抽取出来,作为独立的服务,使前端应用能更快速和稳定的响应. 第一:介绍Dubbo背景 大规模服务化之前,应用可能只是通过RMI或Hessian等工具,简单的暴露和引用远程服务,通过配置服务的URL地址进行调用,通过F5等硬件进行负载均衡. (1) 当服务越来越多时,服务URL配置管理变得非常困难,F5硬件负载均衡器的单点压力也

Dubbo与Zookeeper、SpringMVC整合和使用(负载均衡、容错)【转】

互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,Dubbo是一个分布式服务框架,在这种情况下诞生的.现在核心业务抽取出来,作为独立的服务,使前端应用能更快速和稳定的响应. 第一:介绍Dubbo背景 大规模服务化之前,应用可能只是通过RMI或Hessian等工具,简单的暴露和引用远程服务,通过配置服务的URL地址进行调用,通过F5等硬件进行负载均衡. (1) 当服务越来越多时,服务URL配置管理变得非常困难,F5硬件负载均衡器的单点压力也

springmvc整合redis架构搭建实例

新换环境,又有新东西可以学习了,哈皮! 抽空学习之余看了一下redis,个人对Springmvc的爱是忠贞不渝,所以整理了一下Springmvc整合redis的环境搭建.分享学习. 第一步: 创建maven项目: 实例pom.xml内容如下 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns

Mybatis使用之SpringMVC整合

Mybatis使用之SpringMVC整合 一:简介 主要记录Mybatis如何与SpringMVC框架整合.Mybatis真正与Spring结合更能体现出其灵活.便捷的特点.数据源交由Spring管理.事务交由Spring管理.配置文件.映射文件交由Spring加载.初始化.映射接口交由Spring注入等等.大大简化了Mybatis代码.配置量.Mybatis只需关心与数据库打交道.处理数据与实体类之间的映射即可. 二:环境介绍 主要是Mybatis3.2.8与Spring4.1.0之间的整合

springMvc整合Freemarker引入CSS,JS文件404的问题

在spring webmvcjar包中有个spring.ftl的文件 如下图: 你可以把他拷出来,放到你的目录下,也可以不拷出来,具体的用法就是 在你的freemaker模版开头加上 <#import "spring.ftl" as spring/> 如果你烤出了spring.ftl文件,像找存在感的话,比如拷到 当前项目路径的plugins文件下 那么就加上这个路径就好了<#import "plugins/spring.ftl" as sprin

SpringMVC整合MongoDB

首先,在pom文件中新增spring-data-mongodb的依赖: <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-mongodb</artifactId> <version>1.8.1.RELEASE</version></dependency>然后,新建spring-mongo.xml &l