在使用spring mvc时,我使用了@Service这样的注解, 发现使用注解@Transactional声明的事务不起作用
来源:互联网 发布:短信轰炸java源码 编辑:程序博客网 时间:2024/05/18 23:55
问题出现的场景:
在使用spring mvc时,我使用了@Service这样的注解, 发现使用注解@Transactional声明的事务不起作用。
我的配置如下:
<mvc:annotation-driven />
<context:component-scan base-package="org.test"/ >
<bean id="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource" />
</bean>
<tx:annotation-driven transaction-manager="txManager" />
原因是:
component-scan和事务所在的上下文不一样,component-scan所在的配置是由servlet加载的,事务所在的配置文件是由Listener加载的。
我的解决方法:
按照下面的配置,在应用启动时,不让spring扫描到@Service注解的类,servlet的配置文件中这样写:
<context:component-scan base-package="org.test" >
<context:exclude-filter type="annotation" expression="org.springframework.stereotype.Service" />
</context:component-scan>
listener的上下文中增加:
<context:component-scan base-package="org.test" ></context:component-scan>
- 在使用spring mvc时,我使用了@Service这样的注解, 发现使用注解@Transactional声明的事务不起作用
- 在使用spring mvc时,我使用了@Service这样的注解, 发现使用注解@Transactional声明的事务不起作用
- spring丶基于@Transactional注解的事务配置,声明式事务管理的使用
- Spring 声明式事务中使用注解@Transactional的方式、原理及注意事项
- spring事务配置,声明式事务管理和基于@Transactional注解的使用
- spring事务配置,声明式事务管理和基于@Transactional注解的使用
- Spring事务配置,声明式事务管理和基于@Transactional注解的使用
- SpringBoot学习-事务注解@Transactional的使用
- 在使用Spring的事务注解@Transactional的时候遇到几个坑
- springBoot service 事务注解@Transactional不起作用的解决
- 使用Spring中的 @Transactional注解控制事务
- spring的事务注解@Transactional
- 事务457——spring事务注解Transactional的propagation传播属性使用
- 事务457——spring事务注解Transactional的propagation传播属性使用
- [spring,mysql] spring使用注解式事务声明(@Transactional)无法回滚
- 使用注解的spring mvc
- 声明式事务管理和基于@Transactional注解的使用
- 使用@Transactional注解 事务管理不起作用 没回滚
- 朴素贝叶斯算法(Naive Bayes)
- Qt5.9 for Android配置
- 内置方法
- redis计数器,redis并发锁
- 【Unity与23种设计模式】装饰模式(Decorator)
- 在使用spring mvc时,我使用了@Service这样的注解, 发现使用注解@Transactional声明的事务不起作用
- 配置windows客户端远程登录深度学习服务器
- 新的开始
- 修改所有表的字符集
- 包装类
- 汇龙网:欧美窄幅横盘,短线方向不明
- OGG新增表下发详细步骤及相关注意事项
- Ettercap中间人攻击
- http:cooike和session