1、使用ActionSupport(示例下载
)
org.springframework.web.struts.ActionSupport 类提供了一个getWebApplicationContext() 方法,可用于手动创建一个 Spring 环境。
这种方式很简单并且易于理解。但将 Struts Action与 Spring 框架耦合在一起。如果想替换掉
Spring,那么必须重写代码。
并且,由于 Struts Action不在 Spring 的控制之下,所以它不能获得 Spring AOP 的优势。当使用多重独立的 Spring
环境时,这种方式可能有用,
但是在大多数情况下,这种方法不如另外两种方法合适。
2、覆盖 RequestProcessor
(示例下载
)
使用 org.springframework.web.struts.DelegatingRequestProcessor 类来覆盖 Struts
的 RequestProcessor 处理程序,可将 Spring 从 Struts Action 中分离出来。在struts-config中的配置如下:
<controller processorClass="org.springframework.web.struts.DelegatingRequestProcessor"/>
<plug-in className="org.springframework.web.struts.ContextLoaderPlugIn">
<set-property property="csntextConfigLocation" value="/WEB-INF/beans.xml"/>
</plug-in>
优点是由于 Struts Action 注意不到 Spring 的存在,所以不需要重写 Struts 代码就可以使用其他控制反转容器来替换掉
Spring。
3、将Action管理委托给Spring
(示例下载
)
通过在struts-config中注册Action时使用org.springframework.web.struts.DelegatingActionProxy类来实现,该方式的优点如下:
a):没有 Spring 的话,所有的 Struts 动作都必须是线程安全的。如果设置 <bean> 标记的 singleton 属性 为“false”,那么不管用何种方法,应用程序都将在每一个请求上有一个新生成的动作对象。
b):可以利用 Spring 的生命周期方法。例如,当实例化 Struts 动作时,<bean> 标记的 init-method 属性 被用于运行一个方法。类似地,在从容器中删除 bean 之前,destroy-method 属性执行一个方法。这些方法是管理昂贵对象的好办法,它们以一种与 Servlet 生命周期相同的方式进行管理。
c):Struts Action不了解 Spring,不对代码作任何改变就可用于非 Spring 应用程序中。RequestProcessor 的改变不会影响它,并且它可以利用 Spring AOP 特性的优点。
分享到:
相关推荐
使用Spring整合Struts编写多页面用户注册模块 使用Spring整合Struts编写多页面用户注册模块
Spring 整合 Struts,很强大
Spring整合集成Struts1.2最简单例子
只使用spring和struts进行整合
三大框架集成及两两集成的jar包,spring集成hibernate的jar包以及spring集成struts2的jar包已经单独打包
Spring集成struts以及hibernate jar包 所有的都在里面 需要的可以下载
spring框架整合struts框架时必需的类库文件
Spring与struts整合主要有三种方式,通过Spring的ActionSupport类,通过Spring的DelegatingRequestProcessor类、通过Spring的DelegatingActionProxy类。
整合Spring与Struts的几种方法
spring与struts2整合的小示例,适合初学者,具体说明在博客里
SSH+Redis整合
里面有spring+struts2+ibatis整合的jar包,
JPA+Spring+Struts整合实例,JPA+Spring+Struts整合实例
struts spring集成 struts spring集成 struts spring集成
spring整合struts2与hibernate核心配置文件
Spring+Struts+Hibernate比较详细的整合配置方案
1.使用Spring 的 ActionSupport 2.使用Spring 的 DelegatingRequestProcessor 类。 3.全权委托。
spring和struts整合的三种方案.
spring整合struts.rar
spring struts 整合的所有jar包