使用springmvc后事物不起作用的原因
程序员文章站
2022-05-04 09:01:48
...
问题表现:用springmvc后事物不起作用
解决方法:
1、查所有关于事物的配置都没有问题;
2、查找日志,发现配置@postConstruct注解的方法在服务启动过程中执行了两次;
3、为什么出现两次,百度后知道在springmvc的注解扫描配置中要用<context:exclude-filter>来过滤排除掉@service,如果不排除就会初始化两次servicebean,导致事物失效。如果说spring 容器 初始化的时候service注解配置的事物能正常使用,那么springmvc的扫描service初始化事物也应该成功,为什么失败呢?原因是事物管理器的配置是以xml的配置方式配在applicationContext中的,而在springmvc的配置中并没有配置,所以导致事物两次初始化servicebean后不起作用。
解决方法:
1、查所有关于事物的配置都没有问题;
2、查找日志,发现配置@postConstruct注解的方法在服务启动过程中执行了两次;
3、为什么出现两次,百度后知道在springmvc的注解扫描配置中要用<context:exclude-filter>来过滤排除掉@service,如果不排除就会初始化两次servicebean,导致事物失效。如果说spring 容器 初始化的时候service注解配置的事物能正常使用,那么springmvc的扫描service初始化事物也应该成功,为什么失败呢?原因是事物管理器的配置是以xml的配置方式配在applicationContext中的,而在springmvc的配置中并没有配置,所以导致事物两次初始化servicebean后不起作用。
<context:component-scan base-package="com.taotaosou" > <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Service" /> </context:component-scan>
推荐阅读
-
在文档加载后使用(document./write),会覆盖整个文档的原因是什么
-
苹果Mac10.9系统使用CleanMyMac后lunchpad图标丢失的原因及解决方法介绍
-
【很容易忽视的问题】为何使用护卫神iis-windows服务器,在使用护卫神主机修改网站信息后则无法访问的根本原因??
-
IDEA 使用springMVC在配置完web.xml后,依旧存在中文乱码的问题
-
Left join的on后条件不起作用的原因
-
ssm整合后配置的事务不起作用的原因和解决方法
-
Python异常抛出后使用except接收的原因
-
使用排除法检查电脑显示器开机后不亮的原因
-
在文档加载后使用(document./write),会覆盖整个文档的原因是什么
-
苹果Mac10.9系统使用CleanMyMac后lunchpad图标丢失的原因及解决方法介绍