详细解决方案
strut2 与spring 整合之后创建action哪位高手负责销毁
热度:1937 发布时间:2016-04-10 22:48:21
最近在学习三大框架,看到了整合这一块,之前 struts2.0 中的创建的Action使用的是 com.opensymphony.xwork2.ObjectFactory ,应对每次客户端的请求,它都会创建一个新的实例,至于这个实例何时销毁,由XWORK来控制。内部应该是xwork有一套像spring一样的IOC机制。这个我理解
在学到Struts2和Spring 整合的时候,Action实例由Spring提供,并且需要将其scope="prototype",这样每次对该bean请求时都会创建一个新的bean实例。
接下来问题来了——
那就是Spring不能对一个prototype bean的整个生命周期负责:容器在初始化、配置、装饰或者是装配完一个prototype实例后,将它交给客户端,随后就对该prototype实例不闻不问了
我想问这个Action是不是spring负责销毁?如果是,Spring容器如何销毁,如果不是?那么他又该怎么运作?
------解决方案--------------------
在补充一点,由于Action这类bean不是单例的,所以如果设置成prototype的话,spring不负责销毁,这个你上文也说过了。不过在spring 2.0后引入了另外三个scope属性值(对web来说),有request,session,global session,这个由名字也能看出其生存范围了。所以struts的Action的scope应该配置成request而不是prototype,你可以看成是prototype的特例。
不过我由去查了下文档,文档里说的集成方式确实写着prototypt,然后我在这个http://struts.apache.org/development/2.x/docs/spring-plugin.html上看到了这样一段话,

相关解决方案
- Spring MVC开发模式,怎么取得新增的id
- spring 表单对象绑定有关问题 String与Long的转换
- ssh action 调用service的时分service 为null
- spring+quartz定时器有关问题
- spring @Scope("prototype")注解更新有关问题,寻求帮助
- Struts-config.xml配置文件《action-地图pings》元素的详解
- Spring MVC是不是可以完全取代Struts
- spring+quartz的错误,不能正常启动
- spring mvc +ibatis+db2连接数据库的配置如何写啊小弟我链接不下
- spring MVC cvc-complex-type.2.4.c解决方案
- Spring + Mybatis 组合报错
- Spring 中 packagesToScan有关问题
- Spring MVC中点击旋钮没反应
- spring aop这个跳转异常是咋回事
- spring security3的一个小疑点。加急
- spring 事务 aop transactionManager,该怎么解决
- 关于<form action >的一个有关问题
- Spring 事务管理,该怎么处理
- 新手求解,使用struts报错Cannot retrieve definition for form bean studsForm on action /stu,该怎么解决
- 关于 Spring 声明式事务管理!解决办法
- form 表单交付 <form action="<c:url value='desktop'/>"
- Struts2+Spring+JPA+FREEMARKER 登录程序异常
- 关于 Spring 宣言式事务管理!
- 求SSM分页 struts +spring+mybatis 给小弟我发个学习学习吧 多谢大神们
- spring placeholderConfig的有关问题
- spring 事宜 aop transactionManager
- Spring 事务管理,该怎么解决
- 生手求解,使用struts报错Cannot retrieve definition for form bean studsForm on action /stu
- struts2 + spring 整合有关问题
- 上面是JAVA WEB中,学生在线考试(action)的代码,有几个不明白,帮忙解释一上