`
qingxing30
  • 浏览: 32183 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Struts2+Spring整合

阅读更多

Struts2和Spring整合
   需要JAR包:
      Struts2:
        1、struts2-core-2.0.11.jar
        2、xwork-2.0.4.jar 
        3、commons-logging-1.0.4.jar
        4、freemarker-2.3.8.jar  
        5、ognl-2.6.11.jar
        6、struts2-spring-plugin-2.0.9.jar(这个JAR包要和Spring的版本对应上,否则会有不必要的报错)
      Spring:
         这里只使用了核心包
         1、spring.jar
   配置文件:
       Src目录下的Struts的配置文件
          1、struts.xml
          2、struts.properties
       WEB-INF目录下,只需要放置Spring的配置文件 
          1、applicationContexxt.xml
          2、web.xml
  
   配置文件的内容: 
      1、配置web.xml,使得web应用支持Struts2
   <!--配置Struts2文件位置  -->
       <filter>
            <filter-name>struts2</filter-name>
            <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
       </filter>

       <filter-mapping>
            <filter-name>struts2</filter-name>
            <url-pattern>/*</url-pattern>
        </filter-mapping>
2、配置使得项目启动的时候,加载spring配置文件
   <context-param>
                  <param-name>contextConfigLocation</param-name>
                  <param-value>/WEB-INF/applicationContext.xml</param-value> 
   </context-param> 
    <listener> 
                 <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> 
    </listener> 
3、配置Struts2的struts.properties
   配置struts.objectFactory属性值。在struts.properties中设置struts.objectFactory属性值:
     
      struts.objectFactory = spring
  
   或者在struts.xml配置文件中进行常量的配置:
   <struts>
              <constant name="struts.objectFactory" value="spring" /> 
   </struts>
    这样,Struts2+spring就已经整合好了,下面可以写的测试类来测试搭建的环境是不是已经OK;

    类,相当于Action,只是Struts2的Action可以是普通的JAVABEAN;
    public class HelloWorld{
        private String path;
        public void setPath(String path){
              this.path = path;
        }
        public String testStruts(){ 
              return this.path;
        }
    }
    在struts.xml中进行配置
       <package name="test"  extends="struts-default">
             <action name="helloWorld" class="com.sanling.test.HelloWorld" method="testStruts">
                     <result name="OK">/index.jsp</result> 
              </action>
       </package>
    在spring配置文件中配置HelloWorld,并传个值测试;
       <bean class="com.sanling.test.HelloWorld">
                <property name="path" value="OK"></property>
       </bean>
   
    OK,启动Tomcat,访问http://localhost:8080/struts2_spring/helloWorld.do

    总结:
      Struts2和Spring整合的使用,使用到Spring插件包struts2-spring-plugin-x-x-x.jar,
    这个包的同Struts2一起发布的。Spring插件是通过覆盖Struts2的ObjectFactory来增强核心
    框架对象的创建。当创建一个对象的时候,会用到Struts2配置文件中的clss属性去和Spring
    配置文件中的id属性进行关联。如果能找到,则由Spring创建,否则由Struts2框架自身创建,
    然后由Spring来装配。Spring插件具体有如下几个作用:

    1、允许Spring创建Action Interceptor和Result.
    2、由Struts创建的对象能够被Spring装配;
    3、如果没有使用Spring ObjectFactory,提供了2个拦截器来自动装配Acton.

    开发的时候,可以不需要在Spring配置文件中注册action,Struts框架会自动自动从action mapping中创建action对象。
   
    Struts2框架整合Spring后,处理用户请求的Action并不是Struts框架创建,而是由Spring
    插件创建。创建实例时,不是利用配置Action时指定的class属性值,而是根据bean的配置id属性,从Spring容器中获得相应的实例。

 

分享到:
评论

相关推荐

    struts2+spring整合登陆验证经典完整案例!

    struts2+spring整合登陆验证经典完整案例!期余JAR文件在struts2+spring整合登陆验证经典完整案例!(JAR)这个中,免积分下载! 部署Web应用请按如下步骤进行: 1. 进入reg_login路径下,将mysql.sql脚本中的语句...

    struts2+spring整合登陆验证经典完整案例!(JAR)

    struts2+spring整合登陆验证经典完整案例!这个文件和 "struts2+spring整合登陆验证经典完整案例"一起下载使用,由于CSDN资源大小限制,分成两个部分,这个部分都是.jar文件,免积分下载!

    struts2+spring整合

    下面将详细介绍这个“struts2+spring整合”的小DEMO及其涉及的关键知识点。 1. **Struts2框架**:Struts2是基于MVC设计模式的Java Web开发框架,主要负责处理HTTP请求,控制业务流程,并将数据传递给视图层。其核心...

    struts2+spring整合例子

    在提供的"struts2+spring整合例子"中,"S2Spring"这个压缩包很可能包含了上述所有配置文件和源代码示例。通过查看这些文件,我们可以深入理解Struts2与Spring如何协同工作,学习如何在实际项目中进行整合。对于初学...

    Struts 2+Hibernate+Spring整合开发技术详解sample.pdf

    Struts 2+Hibernate+Spring整合开发技术详解sample.pdf

    Struts2+Hibernate+Spring整合开发技术详解19章网上书店完整源码

    Struts2+Hibernate+Spring整合开发技术详解19章网上书店完整源码(内附数据库导出文件) 与书上最后一章内容完全对应 可以结合书上教程进行最后一章学习

    最新版本的Struts2+Spring4+Hibernate4框架整合

    整合使用最新版本的三大框架(即Struts2、Spring4和Hibernate4),搭建项目架构原型。 项目架构原型:Struts2.3.16 + Spring4.1.1 + Hibernate4.3.6。 此外,还有:log4j、slf4j、junit4、ehcache等知识点。 项目...

    轻量级JavaEE企业应用实战_Struts2+Spring3+Hibernate整合开发_第3版.part2

    轻量级JavaEE企业应用实战_Struts2+Spring3+Hibernate整合开发_第3版.part2

    struts2+spring整合的系统

    在"struts2+spring整合的系统"项目中,开发者成功地将这两个框架集成,实现了登录功能和非空验证。这是一个非常实用的学习案例,对于初学者来说,理解并模仿这样的整合有助于提升技能。 1. **Struts2框架**:Struts...

    struts2+spring+mybatis框架

    在Struts2+Spring整合中,Spring负责业务层对象的管理,提供IOC(Inversion of Control)容器来管理和控制对象的生命周期。同时,Spring的AOP模块可以用于实现如日志记录、权限控制等通用功能。 **MyBatis框架** ...

    轻量级JavaEE企业应用实战_Struts2+Spring3+Hibernate整合开发_第3版.part1

    轻量级JavaEE企业应用实战_Struts2+Spring3+Hibernate整合开发_第3版.part1

    struts2+spring整合的一个例子

    在这个例子中,"struts2+spring整合的一个例子"展示了如何将这两个框架结合,以实现一个查询功能。由于无需数据库,我们可以假设这个例子可能使用了静态数据或者内存中的数据结构来模拟数据存储。下面我们将详细探讨...

    struts2+spring+mybatis+easyui的实现

    总的来说,"struts2+spring+mybatis+easyui"的实现是一个标准的Java Web项目结构,它利用Maven进行构建管理,通过整合四个组件,实现了后端的业务逻辑处理、数据访问和前端的用户界面展示。这种架构在实际开发中具有...

    Struts2 + Spring 整合简单例子

    提供的压缩包文件"struts2+spring整合实例.docx"可能包含了详细的步骤和示例代码,用于指导如何将这两个框架整合到一个项目中。通过学习和实践这个实例,开发者可以更好地理解和掌握Struts2与Spring的整合技巧。

    轻量级Java EE企业应用实战——Struts 2+Spring+Hibernate整合开发 全套电子书.part3

    轻量级Java EE企业应用实战——Struts 2+Spring+Hibernate整合开发电子书123全套.part3.rar

    Struts2+Spring整合所需jar包

    下面我们将详细介绍Struts2和Spring整合所需的核心jar包及其作用。 1. **Struts2框架**: - **struts2-core.jar**:Struts2的核心库,包含了Action、Interceptor、Result等核心组件。 - **struts2-convention-...

    Struts2+Hibernate+Spring整合开发深入剖析与范例应用03

    Struts2、Hibernate和Spring是Java企业级应用中三大核心框架,它们的整合使用能够构建出高效、可维护性高的Web应用程序。本篇将深入剖析这三者如何协同工作,并提供实际范例应用。 首先,Struts2作为MVC(模型-视图...

    struts2+spring2.5+hibernate3.2整合完整项目,带数据库脚本

    Struts2、Spring2.5和Hibernate3.2是Java Web开发中经典的三大框架,它们的整合使用在过去的许多年里被广泛应用于企业级应用系统。这个完整的项目提供了从开发环境到运行环境的所有必要组件,包括数据库脚本,使得...

Global site tag (gtag.js) - Google Analytics