org.springframework.jdbc.datasource.DataSourceTransactionManager不回滚

  • Post author:
  • Post category:其他


先说一下我的目录结构

1、maven项目;

2、spring applicationContext.xml放在resources目录下

3、transactionManager datasource定义在applicationContext.xml中,在web.xml中org.springframework.web.context.ContextLoaderListener加载

4、spring-mvc-servlet.xml中只定义了与web controller,json转换的bean;

问题:

service中dao1 dao2执行不回滚。

原因:

不知道,DataSourceTransactionManager是对datasource级进行事物的。

解决:

把applicationContext.xml中的transactionManager datasource都放到spring-mvc-servlet.xml中,回滚了。

2015年8月3日18:56:33

找到原因了:

由于在applicationContext.xml与spring-mvc-servlet.xml都对dao与service包进行了component-scan,相当于两次,所以spring-mvc-servlet.xml最好只放与web相关的bean

from : http://blog.chinaunix.net/uid-12348673-id-4977075.html



版权声明:本文为iteye_19209原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。