关键字: struts2
spring
在Struts2
中整合Spring
的IoC支持是一件十分简单的事情。让我们一步一步来实现:
1)复制struts2
-spring
-plugin-x-x-x.jar和相应的spring
.jar到/WEB-INF/lib目录下。
2)在struts.properties中设置struts.objectFactory属性值
struts.properties
- struts.objectFactory = spring
或者是在XML文件中进行常量配置
struts.xml
- <
struts
>
-
<
constant
name
=
"struts.objectFactory"
value
=
"spring
"
/>
- </
struts
>
3)配置Spring
监听器
web.xml
- <
listener
>
-
<
listener-class
>
org.springframework.web.context.ContextLoaderListener
</
listener-class
>
- </
listener
>
通过Spring
配置来注册对象
applicationContext.xml
- <?
xml
version
=
"1.0"
encoding
=
"UTF-8"
?>
- <!DOCTYPE beans PUBLIC
- "-//SPRING
//DTD BEAN//EN"
- "http://www.springframework.org/dtd/spring
-beans.dtd"
>
- <
beans
default-autowire
=
"autodetect"
>
-
<
bean
id
=
"hello"
class
=
"hpfyeah.struts2
.spring
.HelloWorldAction"
/>
- </
beans
>
当然你也可以拥有更多的Spring
配置文件。在web.xml中进行下列设置,从而使Spring
的ApplicationContext通过匹配所给定模式的文件来初始化对象
web.xml
- <!-- 用来定位Spring
XML文件的上下文配置 -->
- <
context-param
>
-
<
param-name
>
contextConfigLocation
</
param-name
>
-
<
param-value
>
-
/WEB-INF/applicationContext-*.xml,classpath*:applicationContext-*.xml
-
</
param-value
>
- </
context-param
>
4)修改你的Struts配置文件
struts.xml
- <!DOCTYPE struts PUBLIC
- "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
- "http://struts.apache.org/dtds/struts-2.0.dtd"
>
- <
struts
>
-
<
include
file
=
"struts-default.xml"
/>
-
<
package
name
=
"default"
extends
=
"struts-default"
>
-
<
action
name
=
"pureStruts"
class
=
"hpfyeah.struts2
.spring
.HelloWorldAction"
>
-
<
result
>
hello.jsp
</
result
>
-
</
action
>
-
<
action
name
=
"springStruts"
class
=
"hello"
>
-
<
result
>
hello.jsp
</
result
>
-
</
action
>
- </
struts
>
默认情况下,Spring
从上面显示的applicationContext.xml文件中寻找为hello所做的配置
5)好了,现在你的Struts2
和Spring
就能正常的一起工作了。有几个配置技术点需要详细说明下:
装配模式
。你可以通过设置修改struts.properties中下列属性的值来改变装配模式。
name
|
按照你的action的属性的名字和Spring
里的bean的名字匹配,如果匹配就自动装配。这是缺省的
|
type
|
按照你的action的属性的类型,在Spring
注册的bean中查找,如果相同就自动装配。这需要你在Spring
中仅注册了一个此类型的bean |
auto
|
Spring
会试图自动监测来找到最好的方法自动装配你的action |
constructor
|
Spring
会自动装配bean的构造函数的参数 |
是否使用类缓存
。你可以通过设置修改struts.properties中下列属性的值来改变是否使用Spring
自身的类缓存机制。可以设定的值为true或false,默认为true。
struts.properties
struts.objectFactory.spring
.useClassCache = false
分享到:
相关推荐
Spring 和 Struts2 是两个...总之,Spring 和 Struts2 的整合利用了两者的优势,提供了一种强大的方式来构建可扩展、易于维护的 Java Web 应用。通过深入学习和实践,开发者可以掌握这种整合技巧,并在实际项目中应用。
整合Spring和Struts是Web开发中常见的需求,这两者都是Java Web开发的重要框架。Spring以其强大的依赖注入(DI)和面向切面编程(AOP)能力,以及对其他框架的良好集成,而Struts则是一个专注于MVC模式的轻量级框架...
整合Spring和Struts 2的主要目的是将Spring的依赖注入和管理能力引入到Struts 2的Action中,以及利用Spring的AOP进行事务管理。整合步骤通常包括以下几个部分: 1. **添加依赖**:在项目中引入Spring和Struts 2的库...
在IT行业中,SSH(Spring、Struts2、Hibernate)是一个经典的Java Web开发框架组合,而Redis则是一个高性能的键值存储系统,常用于缓存和数据持久化。将SSH与Redis整合,可以提升应用程序的性能和响应速度。下面将...
在Java Web开发中,Spring和Struts2...整合Spring和Struts2是一个常见的Java Web开发实践,熟练掌握这一技能能够提高开发效率,提升应用的可维护性和扩展性。在实际开发过程中,可以根据项目的具体需求进行定制和优化。
当我们把Spring、Struts2和iBatis整合在一起时,可以构建出一个高效、模块化的Web应用。Spring作为整体的框架容器,负责管理所有的Bean,包括Struts2和iBatis的相关组件。Struts2处理HTTP请求,调用Spring管理的业务...
在Struts2和Spring整合中,可以使用Spring提供的拦截器,例如`org.springframework.web.struts.DelegatingInterceptor`,它能让Spring容器处理Action的实例化。 7. **事务管理**:Spring提供了强大的事务管理功能。...
spring和struts2.x的整合篇spring和struts2.x的整合篇
通过以上步骤,我们可以成功地整合Spring和Struts2,实现一个完整的MVC架构。这样的整合使得我们可以充分利用Spring的IoC和AOP特性,以及Struts2的MVC模型,构建出更加灵活、可扩展的Java Web应用。提供的源码应包含...
Struts2整合Spring和JPA是企业级Java应用开发中常见的技术组合,它们分别负责不同的职责:Struts2作为一款成熟的MVC框架,主要用于处理Web层的请求与响应;Spring作为一个全面的轻量级框架,提供了依赖注入(DI)和...
Struts2、Spring和Hibernate是Java Web开发中的三大框架,它们各自解决应用程序的不同问题,而将这三者整合在一起可以构建高效、灵活的企业级应用。Struts2作为MVC(Model-View-Controller)框架,负责处理用户请求...
首先,整合Spring和Struts2的关键在于配置。通常,我们需要在Struts2的配置文件(struts.xml)中定义Action类,然后在Spring的配置文件(spring.xml)中声明这些Action类,并指定它们的bean实例。这样,Spring将负责...
1. **添加依赖**:整合Spring和Struts2,首先需要确保项目中包含必要的jar包。这些包括Spring的核心库、Struts2的核心库以及它们之间的整合包。最少的jar包可能包括:spring-context、spring-web、struts2-core、...
在IT行业中,构建一个应用程序通常涉及选择和集成不同的框架,以实现高效且可维护的解决方案。"Spring+Struts2+MyBatis整合"是一个常见的...通过实际操作,你将能更好地掌握Spring、Struts2和MyBatis的协同工作方式。
这里提到的"spring4 struts2 mybatis3 maven3 整合"就是一个典型的Java Web开发技术栈,分别代表了Spring Framework 4、Struts 2、MyBatis 3和Maven 3这四个组件。下面将详细阐述这些技术以及它们整合的意义和方法。...
Spring还提供了对其他框架的集成支持,如数据库访问、事务管理以及与Struts2和DWR的整合。 Struts2是一个基于MVC设计模式的Java Web框架,用于构建可维护、可扩展的应用程序。它提供了强大的动作类、拦截器、结果...
**Spring、Struts2 和 iBatis 整合详解** 在Java Web开发中,Spring、Struts2 和 iBatis 是三个非常重要的框架。它们分别负责不同层面的任务:Spring 提供了全面的依赖注入(DI)和面向切面编程(AOP),用于管理...
SSM整合是Java Web开发中常见的一种框架集成方式,它结合了Spring、Struts2和Mybatis三个强大的组件,以实现高效、灵活的业务逻辑处理和数据持久化。以下是关于这三个框架及其整合的关键知识点的详细解释。 **...