将 Struts Action 管理委托给 Spring 框架
(1):在Struts-config.xml中加入Spring插件ContextLoaderPlugin,为 Struts 的 ActionServlet 装载 Spring 应用程序环境。
<!--
Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/
--> < plug-in className =
"org.springframework.web.struts.ContextLoaderPlugIn" >
< set-property property =
"contextConfigLocation" value ="/WEB-INF/struts.xml" />
</ plug-in >
(2):在Struts-config.xml中将Action替换为代理类DelegatingActionProxy,负责在 Spring 环境中查找 Struts 动作。
<!--
Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/
-->< action path ="/test"
type ="org.springframework.web.struts.DelegatingActionProxy"
name ="testForm" > //其中DelegatingActionProxy会根据path="/test",到1步骤的struts.xml文件中找寻相应的Action.
< forward name ="success" path ="/WEB-INF/pages/success.jsp" />
< forward name ="failure" path ="/WEB-INF/pages/failure.jsp" />
</ action >
(3):讲struts装载到Spring。
<!--
Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/
-->< beans >
< bean id ="testBiz" class ="org.xixi.biz.bizImpl.testImpl" />
< bean name ="/test" //根据name属性注入2步骤action里的其它子节点特性(在这时spring也同时融入了自己的特性,比如将Biz注入action)
class ="org.xixi.web.actions.Test" >
< property name ="testBiz" >
< ref bean ="testBiz" />
</ property >
</ bean >
</ beans >
上面的是spring管理struts的最常用的方法.
此外,还可以使用Spring的ActionSupport类或使用Spring的DelegatingRequestProcessor覆盖Struts的RequestProcessor达到整合的目的.
分享到:
相关推荐
### Spring管理Struts与Hibernate详解 #### 一、Spring整合Struts 在Web开发中,Struts是一个基于MVC设计模式的开源框架,它能够帮助开发者构建可维护性高、结构清晰的应用系统。Spring框架则提供了强大的依赖注入...
### Spring管理Struts的Action详解 #### 一、Spring与Struts框架整合概述 在Java Web开发中,Spring和Struts是两个非常重要的框架。Spring框架主要负责业务逻辑层的管理,提供依赖注入(DI)和面向切面编程(AOP)...
在整合两者时,主要目标是让Spring管理Struts的Action实例,这样可以利用Spring的IoC容器来创建和控制Action对象。 首先,关键步骤是使Struts的ActionServlet能够加载Spring的应用程序环境。这可以通过在Struts的...
5. **Spring管理Struts的Action** 在Spring配置文件中,声明Struts Action为Bean,并指定其Class。例如: ```xml ``` 这样,Spring会管理Action实例的生命周期,并负责注入依赖。 6. **Struts配置修改** ...
5. **整合SSM**:将Spring的IoC容器与Struts的ActionContext相结合,使Spring管理Struts的Action实例。同时,MyBatis与Spring集成,通过Spring的SqlSessionFactoryBean来创建SqlSessionFactory。 6. **编写业务逻辑...
《图书管理系统spring+struts+hibernate》是一款基于Java技术栈开发的图书管理软件,其核心框架包括Spring、Struts和Hibernate。该系统利用MySQL作为数据库存储数据,提供了完整的数据库备份,确保了数据的安全性与...
- 在Spring配置中定义Action的bean:让Spring管理Struts Action的生命周期。 #### 8. 业务层代码开发 - 开发业务层代码:实现业务逻辑,连接数据访问层和表示层。 - 业务服务接口:定义业务层对外提供的服务接口。 ...
4. 整合Spring和Struts:使用Spring的Struts2插件,使Spring管理Struts的Action。 5. 整合Spring和Hibernate:通过Spring的SessionFactoryBean创建SessionFactory,并在Service层注入,进行数据库操作。 在实际开发...
另一种整合方式是通过继承Spring的ActionSupport类,这使得开发者能够显式地使用getWebApplicationContext()方法获取Spring管理的bean。这种方式更适用于那些需要深度集成Spring特性的场景,比如AOP或更复杂的依赖...
在IT行业中,SSH(Spring、Struts2、Hibernate)是一个经典的Java Web开发框架...在实际项目中,SSH的集成通常会涉及如何配置各个框架的协作,例如Spring管理Struts2的Action,以及Spring和Hibernate的事务管理整合等。
通过Spring管理Struts的Action,可以实现Action的依赖注入,使得业务逻辑更加清晰。同时,通过Spring对Hibernate的支持,可以减少对持久层的直接操作,提高代码的可读性和可维护性。总的来说,SSH的集成使用是Java ...
同时,为了集成 Spring,需要配置 Struts2-Spring 插件,这样 Struts2 就能利用 Spring 管理的 Bean。 4. **Action 类**:Action 类通常作为 Struts2 处理请求的入口,它可以从 Spring 容器中注入所需的依赖。通过...
1. **Spring管理Struts2和Hibernate**:Spring作为容器,负责Struts2 Action和Hibernate SessionFactory的创建和管理。 2. **事务管理**:通常使用Spring的声明式事务管理,将事务管理逻辑从代码中分离出来。 3. **...
1. **Spring管理Struts Action**:Spring 可以用来创建和管理Struts的Action实例,实现依赖注入,增强Action的可测试性。 2. **Spring与Struts的拦截器集成**:Spring AOP的拦截器可以与Struts的拦截器结合,提供更...
- 通过Spring管理Struts2的Action,实现Action的依赖注入。 3. **整合步骤**: - **配置Struts2**:首先,你需要在Struts2的配置文件(通常为`struts.xml`)中定义Action类,这里Action类应继承自Spring提供的`...
Struts2处理HTTP请求,调用Spring管理的业务服务,这些服务又通过Spring的数据访问层(DAO)与iBatis进行交互,执行数据库操作。这样的架构既保证了前端的灵活性,又实现了后端的高效数据处理。 在提供的"spring+...
1. **Spring作为依赖注入容器**:Struts的Action类可以通过Spring管理,实现依赖注入,这样Action类可以在不关心依赖如何创建的情况下使用它们。 2. **Spring MVC与Struts2的集成**:虽然两者都有MVC模式,但在整合...
5. **整合Struts和Spring**:利用Spring的Struts插件,使Spring管理Struts的Action,实现依赖注入。 6. **整合Hibernate和Spring**:在Spring配置文件中配置Hibernate的SessionFactory,使Spring管理SessionFactory...
Struts2与Spring的整合可以让Spring管理Struts2的Action,实现依赖注入,同时,Struts2可以通过Interceptor拦截器来实现AOP功能。 整合过程: - 首先,引入三个框架的依赖库,包括iBatis的sql-map-config.xml配置...