将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)

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

将struts2的action交给spring管理及注意事项相关推荐

  1. spring学习之将类交给spring管理,bean的注入,scope,集合注入,自动装配,生命周期,迟加载

    一.将类交给spring管理(IOC) 1.将类交给spring容器管理 如何将一个类交给spring容器进行管理呢? 方法很简单,只需要在applicationContext.xml中加入对应的xm ...

  2. 把对象交给spring管理的3种方法及经典应用

    背景 先说一说什么叫把对象交给spring管理.它区别于把类交给spring管理.在spring里采用注解方式@Service.@Component这些,实际上管理的是类,把这些类交给spring来负 ...

  3. 你不知道的小技巧 — 把对象交给spring管理的3种方法及经典应用

    背景 先说一说什么叫把对象交给spring管理.它区别于把类交给spring管理.在spring里采用注解方式@Service.@Component这些,实际上管理的是类,把这些类交给spring来负 ...

  4. Springboot之——不能交给Spring管理的类如何添加注解?

    情况描述如下: 在EduSubjectServiceImpl方法中,我们调用easyexcel的读方法进行文件的读取,其中有个参数,监听器SubjectExcelListener直接是我们自己new的 ...

  5. 手动添加bean对象,交给spring管理

    *斜体样式手动添加bean对象,交给spring管理 `` ConfigurableApplicationContext Context= SpringApplication.run(Mqtt1App ...

  6. struts2 Action 通过Spring管理, 并通过Spring的方式读取配置文件

    2019独角兽企业重金招聘Python工程师标准>>> 是这样的项目用的是Struts2 和Spring.我想在action层中测试下配置文件读取是否正常,Spring 版本有点低是 ...

  7. OA中总结:s:select,关于使用modelDriven,项目分层,@Transactional,jspf,各个层上配置注解交给spring管理的方法,简单的OGNL表达式写法

    % <s:select>  list:需要进行迭代的list集合  listKey:需要提交的值  listValue:需要在页面上显示的值 ======================= ...

  8. mysql交给spring管理_Mysql事务结合spring管理

    spring事务相关问题记录 遇到情况: 在本地单体应用调试代码时,发现在一个加了@transaction注解的方法里进行先更新后查询的操作,查询的结果是可以看到更新的内容的.而在微服务环境中同样的代 ...

  9. spring中自定义对象交给spring容器管理的4种方式

    1.自定义一个 BeanDefinition @Component public class BeanPro implements BeanDefinitionRegistryPostProcesso ...

最新文章

  1. 当随机不够随机:一个在线扑克游戏的教训
  2. 使用Prometheus监控Linux系统各项指标
  3. appframework3.0(JQmobi)入门教程
  4. Java八岁生日快乐!
  5. mysql导入10g数据库_oracle10g数据库导入、导出(exp/imp、expdp/impdp)
  6. python 文件管理_python 文件操作
  7. 关于vue的语法规则检测报错问题
  8. hdu-2112 HDU Today(最短路)
  9. 图和两种遍历,Saving James Bond
  10. 磨金石教育摄影技能干货分享|世界顶级的手机摄影作品欣赏
  11. java:编写一个求平方的窗体
  12. ![CDATA[]]和转义字符
  13. Matlab之函数参数nargin和nargout
  14. 屏幕尺寸/机型/系统版本判定
  15. 滑雪教程-新手必看(上)
  16. 北京35岁程序员失业,感叹:编程估计没戏了,想去卖点煎饼果子养家~
  17. 如何快速的推广自己网站(博客)呢?
  18. goahead(嵌入式) webservice (3.3.0)运行jst、asp页面
  19. 单片机蜂鸣器发声,首先是让他一直响
  20. 微信公众号自定义菜单栏添加历史消息方法(亲测有效)

热门文章

  1. 2014-2019年中国K12家教辅导市场现状分析及投资前景
  2. HTML table 表格 thead 表头固定,tbody 滚动
  3. ubuntu下载网易云出现错误
  4. 三菱数据移位指令_三菱plc移位指令实例详解
  5. excel常用函数vlookup函数
  6. web项目PDF导出---freemarker 与 ITextRenderer--加页码
  7. Mac mysql数据库基本操作
  8. Python如何实现读写txt文件?读写txt文件的方法有哪些?
  9. 如何用 Python 写一个简易的抽奖程序
  10. 在Windows系统中通过简单代码实现一键清理C盘垃圾文件