`

Struts2、Hibernate3、Spring2、Sitemesh、FreeMarker整合

阅读更多

1.Sitemesh
SiteMesh是一个网页的外观,布局,导航框架,它能够将网页中的静态内容与动态内容进行分离,使整个网站拥有同一的外观,统一的装饰,并且易于今后更改外观样式设计。


2.FreeMarker
FreeMarker 我认为要比老掉牙的Velocity要强大得多,FreeMarker是一个模板引擎,一个基于模板生成文本输出的通用工具,使用纯Java编写,被设计用来生成HTML Web页面,特别是基于MVC模式的应用程序。虽然FreeMarker具有一些编程的能力,但通常由Java程序准备要显示的数据,由 FreeMarker生成页面,通过模板显示准备的数据。


3.整合所需必备的包
这里只列出一些比较特殊的,其他的包在你使用MyEclipse进行整合的时候,会自动加入到classpath中去,就不再赘述。
struts2-sitemesh-plugin-2.1.6.jar是sitemesh与struts2整合必须的插件包;
struts2-spring-plugin-2.1.6.jar是Struts2与Spring2整合必须插件包;
freemarker-2.3.13.jar是FreeMarker必须包;
sitemesh-2.3是sitemesh的必须包;

4.整合后的Struts请求生命周期
 

5.web.xml文件的配置
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">

    <!-- 配置Spring配置文件的路径 -->
    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>/WEB-INF/spring-*.xml</param-value>
    </context-param>

    <!-- ===========在Struts2 + Spring2 + Hibernate3 + sitemesh + freemarker整合的过程中,以下三个过滤器的顺序千万不能弄错! -->
    <!-- 第一 这个过滤器与Struts的核心过滤器协同工作,以便更容易与sitemesh整合 -->
    <filter>
        <filter-name>struts-cleanup</filter-name>
        <filter-class>
            org.apache.struts2.dispatcher.ActionContextCleanUp
        </filter-class>
    </filter>

    <!-- 第二 sitemesh的过滤器,同时也整合了Freemarker -->
    <filter>
        <filter-name>sitemesh</filter-name>
        <filter-class>
            org.apache.struts2.sitemesh.FreeMarkerPageFilter
        </filter-class>
    </filter>

    <!-- 第三 Struts2的控制过滤器 -->
    <filter>
        <filter-name>struts2</filter-name>
        <filter-class>
            org.apache.struts2.dispatcher.FilterDispatcher
        </filter-class>
    </filter>

    <filter-mapping>
        <filter-name>struts-cleanup</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
    <filter-mapping>
        <filter-name>sitemesh</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
        <filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
  
    <!-- Spring的监听器,以启动spring的root webApplicationContext,来简单地代理ContextLoader -->
    <listener>
        <listener-class>
            org.springframework.web.context.ContextLoaderListener
        </listener-class>
    </listener>
    <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>
    <login-config>
        <auth-method>BASIC</auth-method>
    </login-config>
</web-app>



本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/csuliky/archive/2009/06/08/4250487.aspx

分享到:
评论

相关推荐

    struts2.1.6+spring2.0+hibernate3.2常用配置包

    MyEclipse8.0中自带的struts2版本是2.1.6,spring版本有2.0,2.5的,hibernate版本较多些至3.2,首先选版本就选择最优的,struts2没的选只有2.1.6版的,所以先导入struts2支持,然后是spring选的是2.0,问题就出在...

    Struts2.0+Hibernate+Spring注册登录系统

    在本系统中,Spring可能被用来管理Struts2的Action和Hibernate的SessionFactory,实现依赖的自动装配,同时也可以通过AOP来实现事务管理,确保数据的一致性。此外,Spring还提供了Spring Security模块,用于身份验证...

    Struts2+Spring+Hibernet+JPA+sitemesh+log4j

    它们各自承担着不同的职责,并且在实际项目中经常被整合使用,形成了所谓的"SSH2"(Struts2 + Spring + Hibernate)框架组合,加上JPA和SiteMesh,进一步提升了开发效率和应用的可维护性。 1. **Struts2**:这是一...

    spring+struts2+ibatis整合

    4. **Spring与Struts2整合**:添加Spring插件到Struts2的配置文件,使Spring能够管理Struts2的Action实例。 5. **Spring与iBatis整合**:使用Spring的JDBC模板或MyBatis-Spring库,将iBatis的SqlSessionFactory注入...

    [Struts 2权威指南--基于WebWork核心的MVC开发(高清完整版) 1/12

    第10章 Struts 2的标签库,第11章 Struts 2的Ajax支持,第12章 使用FreeMarker充当表现层,第13章 整合Spring,第14章 整合JSF,第15章 整合SiteMesh,第16章 整合JasperReports,第17章 整合JFreeChart,第18章 ...

    Struts2.0 与 sitemesh的例子

    Struts2.0支持多种视图技术,如JSP、FreeMarker、Velocity等,并且与许多其他流行的Java库如Hibernate、Spring等无缝集成。在Struts2中,Action类是处理用户请求的核心,每个Action对应一个URL,负责处理请求并返回...

    struts2参考文档(word版)

    第五章可能涵盖Struts2的模型部分,包括数据持久化、DAO设计模式以及与ORM框架(如Hibernate、MyBatis)的整合。 第六章可能讲解Struts2的国际化和本地化支持,如何设置资源文件以支持多种语言,并在应用中动态切换...

    Struts2 in action中文版

    第3章 使用Struts 2动作 36 3.1 Struts 2动作简介 36 3.2 打包动作 39 3.2.1 Struts 2公文包示例应用程序 39 3.2.2 组织你的包 39 3.2.3 使用struts-default包中的组件 41 3.3 实现动作 43 3.3.1 可选的Action接口 ...

    Struts 2 数据库操作

    Struts 2提供了Sitemesh、FreeMarker等模板技术来增强页面布局和动态内容的生成。 总结来说,Struts 2的数据库操作涉及Action、模型对象、DAO、数据持久化、事务管理、结果映射、验证、国际化等多个组件的协同工作...

    S2SH三大框架面试题

    【S2SH三大框架面试题】主要涉及到Struts2、Spring和Hibernate这三大Java Web开发框架的相关知识。这里我们详细探讨Struts2的部分。 1. **Struts2工作流程** Struts2的核心架构由核心控制器`FilterDispatcher`、...

    Struts2.1权威指南——基于WebWork核心的MVC开发.pdf

    - **第14章至第19章整合其他框架**:分别讲述了Struts2与其他流行框架(如Spring、JSF、SiteMesh、JasperReports、JFreeChart、Hibernate)的整合方法,扩展了Struts2的功能范围。 - **第20章至第21章案例分析**:...

    271个java需要用的jar包

    spring-hibernate3-2.0.8.jar spring-jdbc-3.1.1.RELEASE.jar spring-jdbc-4.1.4.RELEASE.jar spring-mock.jar spring-test-3.0.5.RELEASE.jar spring-tx-3.1.1.RELEASE.jar spring-web-3.0.5.RELEASE.jar spring-...

    Java基础和J2ee的SSH2

    SSH2是Spring、Struts2和Hibernate三个开源框架的组合,它们分别是MVC模式的实现、Web应用框架和持久层解决方案。SSH2在J2EE开发中起到了核心作用: 1. Spring框架:Spring提供了依赖注入(DI)和面向切面编程(AOP...

    Java的Struts框架简介与环境配置教程

    4. **易整合性**:Struts2可以轻松地与Spring、Tiles、SiteMesh等其他框架集成,增强了系统的扩展性。 5. **模板支持**:支持多种模板技术,如JSP、Freemarker、Velocity和XSLT,开发者可以根据需求选择合适的视图...

    javaweb项目常用jar包

    struts2-sitemesh-plugin-2.0.14.jar struts2-spring-plugin-2.3.20.jar trove4j-2.0.2.jar ueditor-1.1.1.jar unoil-3.0.1.jar userSystem-1.0.jar velocity-1.5.jar xmemcached-2.0.0.jar xmemcached-...

    web开发常用jar

    struts2整合spring所需要的包 xwork-2.0.7.jar xwork核心包 antlr-2.7.6.jar 一个语言转换工具, Hibernate利用它实现 HQL 到 SQL 的转换模板相关操作需要包 javassist-3.9.0.GA.jar 代码生成工具 ...

    java开发常用jar包

    struts2整合spring所需要的包 xwork-2.0.7.jar xwork核心包 antlr-2.7.6.jar 一个语言转换工具, Hibernate利用它实现 HQL 到 SQL 的转换模板相关操作需要包 javassist-3.9.0.GA.jar 代码生成工具 Hibernate用...

    Java Appfuse-源代码分析-综合文档

    【Appfuse 源代码分析】Appfuse 是一个基于 Maven 的 Java 开发框架,它集成了多种主流的 J2EE 技术,如 Spring、Struts、Hibernate、Sitemesh、Velocity、XFire 和 DWR 等。通过提供一个基础架构,Appfuse 使得...

    J2EE开源框架

    SiteMesh 和 FreeMarker 则是另外两种常用的模板引擎。 - **门户框架**:Liferay 是一款功能全面的门户框架,适用于复杂的业务需求;JetSpeed 是一个基于开源框架构建的企业级门户解决方案,具有高度的灵活性和可...

Global site tag (gtag.js) - Google Analytics