@Transactional失效的问题
2016-03-08 12:51
246 查看
spring事物配置一般没有问题,
优先检查mysql的引擎是否是innodb,
是的话检查包的扫描是否有问题。
我就是因为包的扫描导致@Transactional失效。
具体情况如下,
在spring-mvc.xml文件里写了
<!-- 扫描controller(controller层注入) -->
<context:component-scan base-package="com.test"/>
在spring.xml文件里写了
<!-- 扫描文件(自动将servicec层注入) -->
<context:component-scan base-package="com.test.service"/>
重复扫描,导致事物失效,后来把spring-mcv.xml里的扫描改成
<context:component-scan base-package="com.test.controller"/>
问题解决。。。。
原因就是父容器已经对bean进行扫描并做了事物管理,但是错误写法中,子容器本该只扫描controller,但是因为写错,导致全部又扫了一遍。
所以之前做的事务管理失效。
关于原因,有大神已经做过解释,这里不再赘述
http://stackoverflow.com/questions/7774295/spring-xml-file-configuration-hierarchy-help-explanation/7774597#7774597
优先检查mysql的引擎是否是innodb,
是的话检查包的扫描是否有问题。
我就是因为包的扫描导致@Transactional失效。
具体情况如下,
在spring-mvc.xml文件里写了
<!-- 扫描controller(controller层注入) -->
<context:component-scan base-package="com.test"/>
在spring.xml文件里写了
<!-- 扫描文件(自动将servicec层注入) -->
<context:component-scan base-package="com.test.service"/>
重复扫描,导致事物失效,后来把spring-mcv.xml里的扫描改成
<context:component-scan base-package="com.test.controller"/>
问题解决。。。。
原因就是父容器已经对bean进行扫描并做了事物管理,但是错误写法中,子容器本该只扫描controller,但是因为写错,导致全部又扫了一遍。
所以之前做的事务管理失效。
关于原因,有大神已经做过解释,这里不再赘述
http://stackoverflow.com/questions/7774295/spring-xml-file-configuration-hierarchy-help-explanation/7774597#7774597
相关文章推荐
- html 学习资料列表
- iBatis简单入门教程
- Nginx开启Gzip压缩大幅提高页面加载速度
- SGI STL (4) :: String Implementation Issue
- ZOJ-3919-Ellipse【简单几何】
- 1012. The Best Rank (25)
- TCP/IP、Http、Socket的区别
- ASP.NET MVC 4 RC的JS/CSS打包压缩功能
- 解决自定义cell分割线在iPhone4中不显示的问题
- Spring框架的工作原理
- ubuntu如何进入local、bin目录
- PHP截取IE浏览器并缩小原图的方法
- Win7 自带IIS7局域网无法访问解决办法
- 远程连接到vultr vps的mysql服务器
- 在终端上访问网站和下载文件
- pat1016:部分A+B
- 不用中间变量实现交换swap的问题
- Magcodes.WeiChat——通过CsvFileResult以及DataAnnotations实现导出CSV文件
- Maximal Information Coefficient 最大信息系数
- js控制TR的显示隐藏