`
froast
  • 浏览: 251893 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

由spring管理struts的Action实例

阅读更多

当指定struts.objectFactory为spring时,struts2框架就会把bean转发给spring来创建,装配,注入。但是bean创建完成之后,还是由struts容器来管理其生命周期。配置方式:

(1)struts.xml中:

xml 代码
  1. <constant name="struts.objectFactory" value="spring" />  

 

(2)struts.properties中:

java 代码
  1. struts.objectFactory=spring  

 

通常情况下,这样子就够了,然后在struts的action-mapping配置文件中,如下:

xml 代码
  1. <action name="user" class="com.myapp.admin.web.action.user.UserAction"></action>  

即可,如果在Action中有依赖于其它的BEAN,也会被自动注入进来。这时候,Action实例是以prototype方式创建的,SPRING会为每个请求创建一个ACTION的实例。

 

在某些时候,你可能希望不仅仅让SPRING创建和装配Action对象,还希望让SPRING完全管理这些对象,如希望使用AOP或者希望使用acegi时。这时候,只需要在spring的配置文件中定义这些action 即可。如在applicationContext.xml文件中:

xml 代码
  1. <bean id="user" class="com.myapp.web.action.user.UserAction"/>  

然后在action-mapping中,指定class="user"即可。

 

分享到:
评论
2 楼 felixlee 2014-04-30  
楼主是不是能提一下要把struts-plugin.xml加入到web.xml的这个filter配置里,我按你的方法配置后,找了好久才发现需要添加这个配置。
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
<init-param>
<param-name>config</param-name>
<param-value>struts-default.xml,struts-plugin.xml,config/struts.xml</param-value>
</init-param>
</filter>
1 楼 Alrale 2007-07-29  
需要注意的一个地方:Spring中的缺省作用域是Singleton作用域。而往往Action属于有状态的bean,应该使用prototype作用域。<bean id="user" class="com.myapp.web.action.user.UserAction" singleton="false"/> 如果忽略这个细节,在我们方便实用set,get方法处理数据的时候,可能会有线程安全上的风险。

相关推荐

    struts2+hibernate+spring+ibatis 小实例

    struts2+hibernate+spring+ibatis 小实例struts2+hibernate+spring+ibatis 小实例struts2+hibernate+spring+ibatis 小实例struts2+hibernate+spring+ibatis 小实例struts2+hibernate+spring+ibatis 小实例struts2+...

    Struts+spring简单实例

    一个Struts+spring实例,运用到Action,Form,Dao…… 希望能为大家带来帮助,谢谢

    Struts2+Hibernate+Spring整合实例

    Struts2+Hibernate+Spring整合实例,登陆注册实例,简单来说,Spring通过IoC容器上管(Struts2)Action的创建并依赖注入给控制器,下管(hibernate)SessionFactory的创建并依赖注入给DAO组件,是一个巨大的工厂

    struts2-spring-plugin-2.2.1.1.jar

    Struts2 与Spring 结合,使用Spring 来管理Action 实例

    struts1.2+spring2.0+hibernate3.1框架整合实例

    采用在web.xml中加载spring配置文件的方法降低struts和spring的耦合度,使用自定义的MyDelegatingRequestProcessor类来代替spring的DelegatingRequestProcessor类来解决spring中action的bean的重复配置问题。...

    第17讲 Spring、hibernate和Struts2的整合

    ②把action交给spring管理,即在spring配置文件中定义action Bean并使用依赖注入功能在action中注入业务Bean,同时修改作用域。 ③在struts.xml中的class使用第②步中所定义的action Bean 的id属性值。

    Struts2+Spring+Hibernate整合实例

    这是我整的一个SSH2整合,适合初学者进行整合学习开发,有注册和整合实例,是在一个Action中,大家可以参考下啊

    struts2.0应用实例

    本实例基于spring2.0和struts2.0的一个入门练习,配置文件特别容易理解,只有一个action类,其余的都是配置文件达到的效果。初学者一定有很大的帮助。

    原创 Struts Spring Hibernate (SSH) 整合实例

    Java in Action Struts Spring Hibernate (SSH)

    Struts和Hibernate和Spring做的用户注册,外加实例文档

    名称:Spring Hibernate Struts做的用户注册 使用的范围:初学Spring,已经有Struts和Hibernate基础,打算做三者整合的程序员。 提供方式:实例 文档 特色:给出了Action:null的错误解决方案 推荐指数:五颗星

    (2.0版本)自己写的struts2+hibernate+spring实例

    该项目使用的jar包为以下. spring-beans.jar xwork-2.0.4.jar spring-context.jar ognl-2.6.11.jar spring-web.jar spring-core.jar struts2-core-2.0.11.1.jar commons-logging-...

    structs2拦截器实例计算action执行的时间

    structs2拦截器实例计算action执行的时间,涉及拦截器,structs.xml的配置等等。。

    j2ee中struts+hibernate+spring+pager-taglib分页实例

    j2ee中struts+hibernate+spring+pager-taglib分页实例 这套解决方案,是按照MVC的模式来做的,基于STRUTS框架。分为三个部分,表现层用的是JSP,其中用了JSTL和pager taglib做分页;控制层就是用的很传统的Action;...

    struts2 in action

    《Struts 2实战》结合实例介绍了Struts 2框架,主要内容包括Action、Result、Interceptor等框架组件,基于注解的配置选项等新特征,Struts 2插件 FreeMarker,如何从Struts 1和WebWork 2迁移到Struts 2,Ajax标签、...

    JQuery1.4.2+Struts2.1.8+JSON0.34+Spring2.5.6+Hibernate3.5+XFire1.2.6整合实例

    JQuery1.4.2+Struts2.1.8+JSON0.34+Spring2.5.6+Hibernate3.5+XFire1.2.6整合实例(已上传) 1、JSON0.34使用的是struts2附带的struts2-json-plugin-2.1.8.1.jar 2、db是mysql,名字为test,用户名root,密码空 3、...

    Struts1.2+Spring2.5+Hibernate3.2+Jmesa2.4.3+Jmesatag实例2分页A

    一个Struts1.2+Spring2.5+Hibernate3.2+Jmesa2.4.3+JmesaTag实现的强大分页控件例子 里 面有action实现分页和标签实现分页2个例子 action实现的分页 包括了表头排序,导出为PDF,TXT, excel等格式 jar包和数据库...

    Spring与Struts

    两个实例,主要是action的配置和bean的配置

    JQuery+Struts2+JSON0+Spring+Hibernat+XFire整合实例

    4、部署后可以使用http://localhost:8080/appName/usertest.action进行访问测试struts2和json 5、使用http://localhost:8080/appName/services/*,可以查看到所有发布的WebService接口 6、项目中都未使用到...

    Struts2实战.pdf

    《Struts 2实战》结合实例介绍了Struts 2框架,主要内容包括Action、Result、Interceptor等框架组件,基于注解的配置选项等新特征,Struts 2插件 FreeMarker,如何从Struts 1和WebWork 2迁移到Struts 2,Ajax标签、...

    struts2标签实例(s:textfield、s:select) + spring

    这个是自己试验的实例,不多,只有s:textfield和s:select。里面有注释,页面、xml和action里的注释序号都是相互对应的。jar都在,直接去掉注释就可以运行。我用的开发环境是jdk5和myeclipes5

Global site tag (gtag.js) - Google Analytics