Spring整合Tiles

1.假设Spring相关的包和配置已经导入成功(后续有时间补上,本项目用的是3.2.0版本)。

2.导入Tiles相关的jar包。

  tiles-api-2.2.2.jar

  tiles-core-2.2.2.jar

  tiles-jsp-2.2.2.jar

  tiles-servlet-2.2.2.jar

  tiles-template-2.2.2.jar

3.在servlet.xml中增加Spring和Tiles的整合以及Tiles的配置。

    <bean class="org.springframework.web.servlet.view.tiles2.TilesViewResolver" >
        <property name="order" value="0" />
    </bean>
    <bean id="tilesConfigurer"
        class="org.springframework.web.servlet.view.tiles2.TilesConfigurer">
        <property name="definitions">
            <list>
                <value>/WEB-INF/pbx-views/tiles.xml</value>
            </list>
        </property>
    </bean>

4.定义网站的模版(style.jsp)

<%@ page language="java" contentType="text/html; charset=UTF-8"%>
<%@ 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=UTF-8">
<title></title>
</head>
<body>
    <div>
        <table>
            <tr>
                <td colspan="2">
                    <tiles:insertAttribute name="logo"/>
                </td>
            </tr>
            <tr>
                <td colspan="2">
                    <tiles:insertAttribute name="menu"/>
                </td>
            </tr>
            <tr>
                <td>
                    <tiles:insertAttribute name="body"/>
                </td>
                <td>
                    <tiles:insertAttribute name="advers"/>
                </td>
            </tr>
            <tr>
                <td colspan="2">
                    <tiles:insertAttribute name="footer"/>
                </td>
            </tr>
        </table>
    </div>
</body>
</html>

5.关联页面模版和Tiles(tiles.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>
  <!-- layout for index of MYCOLLEGE  -->
  <definition name="baseLayout" template="/WEB-INF/pbx-views/frame/style1.jsp">
    <put-attribute name="logo" value="/WEB-INF/pbx-views/frame/logo.jsp"/>
    <put-attribute name="menu" value="/WEB-INF/pbx-views/frame/menu.jsp"/>
    <put-attribute name="body" value="/WEB-INF/pbx-views/frame/body.jsp"/>
    <put-attribute name="advers" value="/WEB-INF/pbx-views/frame/advers.jsp"/>
    <put-attribute name="footer" value="/WEB-INF/pbx-views/frame/footer.jsp"/>
  </definition>

  <definition name="*" extends="baseLayout">
      <put-attribute name="body" value="/WEB-INF/pbx-views/{1}.jsp"/>
  </definition>

</tiles-definitions>

PS:此处用了*适配页面定位。

6.然后就可以在controller中方便的映射了。

@Controller
public class IndexController {
    @RequestMapping(value = "/index")
    public String index() {
                //your service action
        return "home";
    }
}

7.流程梳理。

7.1  index请求被Spring分发到IndexController;

7.2  IndexController进行相关的业务处理后,返回字符串home;

7.3  字符串home被TilesViewResolver解析后,返回一个

由logo.jsp/menu.jsp/home.jsp/advers.jsp/footer.jsp组成的一个组合页面。

时间: 2024-10-15 02:21:07

Spring整合Tiles的相关文章

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>

springMVC+MyBatis+Spring 整合(3)

spring mvc 与mybatis 的整合. 加入配置文件: spring-mybaits.xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xm

Spring整合Struts2

Spring整合Struts21整合目的:让Spring的IOC容器去管理Struts2的Action, 2Struts2是web开源框架,Spring要整合Struts2,也就是说要在web应用使用Spring①. 需要额外加入的 jar 包:spring-web-4.0.0.RELEASE.jarspring-webmvc-4.0.0.RELEASE.jar ②. Spring 的配置文件, 和非 WEB 环境没有什么不同 ③. 需要在 web.xml 文件中加入如下配置: <!-- 配置

Spring整合hibernate4:事务管理

Spring和Hibernate整合后,通过Hibernate API进行数据库操作时发现每次都要opensession,close,beginTransaction,commit,这些都是重复的工作,我们可以把事务管理部分交给spring框架完成. 配置事务(xml方式) 使用spring管理事务后在dao中不再需要调用beginTransaction和commit,也不需要调用session.close(),使用API  sessionFactory.getCurrentSession()来

springMVC+MyBatis+Spring 整合(4) ---解决Spring MVC 对AOP不起作用的问题

解决Spring MVC 对AOP不起作用的问题 分类: SpringMVC3x+Spring3x+MyBatis3x myibaits spring J2EE2013-11-21 11:22 640人阅读 评论(1) 收藏 举报 用的是 SSM3的框架 Spring MVC 3.1 + Spring 3.1 + Mybatis3.1第一种情况:Spring MVC 和 Spring 整合的时候,SpringMVC的springmvc.xml文件中 配置扫描包,不要包含 service的注解,S

Spring整合MyBatis

首先下载jar包  mybatis-spring.jar 原因spring3.0出来的早,MyBatis3.0晚,意味着Spring不愿意去在一个没有做出发布版本的MyBatis上做过多的设置.所以,最终jar包提供者第三方. <!--Mybatis+Spring整合--> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId&g

JMS 之 Active MQ 的spring整合

一.与spring整合实现ptp的同步接收消息 pom.xml: <!-- https://mvnrepository.com/artifact/org.springframework/spring-jms --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jms</artifactId> <version>4.3.7.RE

8 -- 深入使用Spring -- 7...2 MVC框架与Spring整合的思考

8.7.2 MVC 框架与Spring整合的思考 对于一个基于B/S架构的JAVA EE 应用而言,用户请求总是向MVC框架的控制器请求,而当控制器拦截到用户请求后,必须调用业务逻辑组件来处理用户请求.此时有一个问题:控制器应该如何获得业务逻辑组件? 最容易想到的策略是,直接通过new 关键字创建业务逻辑组件,然后调用业务逻辑组件的方法,根据业务逻辑方法的返回值确定结果. 在实际的应用中,很少见到采用上面的访问策略,因为这是一种非常差的策略.不这样做至少有如下三个原因: ⊙ 控制器直接创建业务逻

Spring整合strus2简单应用总结

本身strus2没接触过,所以这块学的一知半解,正常不整合的还没学(接着学) step: 1.创建web工程 2.在/WEB-INF/lib引入jar包 asm-3.3.jarasm-commons-3.3.jarasm-tree-3.3.jarcom.springsource.net.sf.cglib-2.2.0.jarcom.springsource.org.aopalliance-1.0.0.jarcom.springsource.org.aspectj.weaver-1.6.8.RELE