`
wkkyo
  • 浏览: 30757 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

将struts2的action交给spring管理及注意事项

    博客分类:
  • Java
阅读更多

 

将struts2中的action交给spring管理

1.xml方式

applicationContext.xml

 

<?xml version="1.0" encoding="UTF-8"?>
<beans
	xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
           http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
           http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">

	<bean id="testAction" class="com.je.app.web.JeTestAction" scope="prototype"></bean>	

</beans>

 

 sturts.xml

 

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC  
	"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"  
    "http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>
	<package name="je" extends="struts-default" namespace="/je">
	
		<!-- Test-->
		<action name="test" class="testAction">
			<result name="invalid.token">/pages/je/test.jsp</result>
			
		</action>
	</package>
</struts>

 

 

2.注解方式

JeTestAction.java

 

/**
 * JeTestAction 
 * @author wkkyo
 */
@Controller
@Scope("prototype")
public class JeTestAction extends ActionSupport {

}
 

 

  sturts.xml

 

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC  
	"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"  
    "http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>
	<package name="je" extends="struts-default" namespace="/je">
	
		<!-- Test-->
		<action name="test" class="jeTestAction">
			<result name="invalid.token">/pages/je/test.jsp</result>
			
		</action>
	</package>
</struts>
 

注意:如果没有指定scope就会出现action属性保存(验证)后一直存在的问题,导致后面的保存(验证)根本没有进行

所以在spring中配置action时要指定scope属性为prototype

配置文件中加入scope="prototype"

 

<bean id="testAction" class="com.je.app.web.JeTestAction" scope="prototype"></bean>

 

注解的话要加上@Scope("prototype")


这样就ok了

默认的spring的bean的周期是单态的(Singleton)

对于每一次请求就不会生成新的实例

 

分享到:
评论
3 楼 小米虫 2012-03-20  
在struts中配置的acion,将其class指向在spring定义的bean,结果我运行时提示找不到该类。jar包我都引进来了
2 楼 wkkyo 2012-01-31  
天塔上的猫 写道
恩 不错的文档,不给是不是应该把web.xml这个也贴出来呢
是不是应该在里面那配个Listener?将acton的初始化也交给spring来管理起来,望斧正

我这个好像就是把action的初始化交给spring吧,不太明白你的意思
1 楼 天塔上的猫 2011-11-08  
恩 不错的文档,不给是不是应该把web.xml这个也贴出来呢
是不是应该在里面那配个Listener?将acton的初始化也交给spring来管理起来,望斧正

相关推荐

    Spring与Struts2整合

    引入Struts2的Spring插件,该插件使得Spring管理的Action类可以在Struts2中直接使用。在struts.xml配置文件中启用该插件。 4. **Action类的配置** 创建Spring管理的Action类,通常需要实现`...

    SSH整合 struts+hibernate+spring

    - **Struts与Spring整合的注意事项**: - 避免直接在Action类中访问Spring上下文,以免破坏Spring的封装性。 - 对Struts的定制可以通过自定义Action代理或者拦截器来实现。 通过以上几个方面的介绍,可以看出SSH...

    struts2 spring hibernate整合要点、注意点

    ### Struts2、Spring与Hibernate整合的关键点及注意事项 #### 一、概述 在Java Web开发领域,Struts2、Spring以及Hibernate是三个非常重要的框架。它们分别在MVC架构、依赖注入与业务逻辑管理、对象关系映射等方面...

    struts2_spring整合示例

    - **注意事项**:配置文件需要准确无误,避免Spring和Struts2配置冲突;注意Action的生命周期,因为它们现在由Spring管理。 5. **实战应用**: - 在实际项目中,我们可能会结合Hibernate或MyBatis作为持久层框架...

    Struts2和Spring整合

    6. **注意事项**:整合过程中需注意版本兼容问题,确保使用的Struts2和Spring版本相互兼容。另外,配置文件的正确性至关重要,任何错误都可能导致应用无法正常运行。 7. **实际应用**:在大型企业级应用中,如电子...

    Struts2与Spring之间的整合方法与原理

    Struts2与Spring之间的整合是企业级应用中常见的技术组合,因为它们分别提供了优秀的MVC框架支持和依赖注入(DI)及面向切面编程(AOP)能力。整合这两个框架可以使开发更加灵活,同时利用Spring的管理功能来增强...

    Struts2+Spring+Hibernate 整合项目

    "说明.txt"文件可能包含了项目的部署指南、注意事项或使用说明,例如数据库连接配置、项目启动步骤、可能出现的问题及解决办法等。在整合SSH的过程中,配置文件的正确设置至关重要,如struts2的struts.properties、...

    Struts2+Spring3+MyBatis框架整合源码+pdf整合文档

    在SSM整合中,Spring作为整体的容器,管理所有对象,包括Struts2的Action和MyBatis的SqlSession。 MyBatis是一个持久层框架,它简化了SQL操作,将SQL语句与Java代码分离,通过XML或注解配置,将接口方法与SQL语句...

    全注解,演示Struts2 + Spring + MyBatis整合

    在整合这三个框架时,首先需要在`struts2-spring-plugin.xml`中配置Struts2与Spring的集成,这样Struts2的Action就可以直接由Spring管理。接着,通过`applicationContext.xml`配置Spring的bean,包括数据库连接池、...

    SSH框架整合spring4+hibernate4+struts2(终结版)

    SSH框架整合Spring4、Hibernate4和Struts2是Java企业级开发中常见的一种技术栈组合,这三种框架分别负责不同的职责:Spring作为整体的应用管理框架,Hibernate负责对象关系映射,Struts2则处理表现层逻辑。下面将...

    整合struts2和spring源代码(可以直接在tomcat中运行)

    可以直接运行,并对整合spring和struts2步骤及需要注意的事项进行类总结 整合spring和struts2总结 1.将struts2和spring中的库文件复制到项目下(可以查看WEB-INF\lib目录下的文件) 注意:struts2-spring-...

    开发者突击 struts2整合Spring 源码

    在"第11章"这个文件中,可能包含了关于如何配置Struts2和Spring整合的具体步骤、示例代码和注意事项。通常,这包括以下内容: 1. 添加Struts2-Spring插件依赖到项目中。 2. 创建Spring配置文件,声明Action类bean...

    spring+struts2+mybatis整合

    - **配置Spring**:创建Spring的配置文件(如:applicationContext.xml),声明数据源、SqlSessionFactory、事务管理器以及Struts2的Action等bean。 - **配置Struts2**:在struts.xml中定义Action,指定Action类、...

    struts2+spring包.zip

    - 通过Spring的DI,可以更方便地管理Struts2的Action,使得Action实例的创建和销毁由Spring容器控制。 - 利用Spring的AOP,可以统一处理全局事务、日志等,减少代码重复。 - 整合后,可以利用Spring的强大功能,...

    struts2+spring

    Struts2主要用于控制应用程序的流程,而Spring则是一个全面的后端解决方案,包括依赖注入、面向切面编程、数据访问、事务管理等。将这两者整合在一起可以构建出高效、可维护的Web应用。 首先,让我们详细了解这两个...

    struts2+spring+ibatis增删改查

    Struts2、Spring和iBatis是Java Web开发中常用的三大框架,它们分别负责MVC模式中的Action层、业务逻辑层和服务数据访问层。这个压缩包文件提供的是一种经典的整合使用这三个框架的案例,用于实现一个基础的CRUD...

    Spring+Struts2+IBatis 项目整合(四)

    在本项目整合中,我们将探讨如何将三个著名的技术框架——Spring、Struts2和IBatis——集成在一起,创建一个高效且灵活的企业级Web应用程序。这个整合通常被称为SSH(Spring、Struts2、Hibernate或iBatis)框架栈,...

    spring struts2整合

    **添加Spring支持**:在Struts2的配置中,引入Spring插件,如`&lt;constant name="struts.objectFactory" value="org.apache.struts2.spring.StrutsSpringObjectFactory" /&gt;`,这将使Struts2使用Spring来创建Action实例...

Global site tag (gtag.js) - Google Analytics