@Transactional(propagation = Propagation.REQUIRES_NEW)是不能生效的
来源:12-27 交易模型管理--交易下单02

用户1148976
2019-06-29
generateOrderNo()方法上的@Transactional(propagation = Propagation.REQUIRES_NEW)是不能生效的,原因:
1.generateOrderNo()方法是private的
2.generateOrderNo()方法是在createOrder()方法中直接调用的,而不是通过动态代理或者CGLIB的代理类调用的。
最简单最快的解决方法是在OrderServiceImpl中注入自身,用
orderModel.setId(orderService.generateOrderNo());
来调用,这样才能使@Transactional(propagation = Propagation.REQUIRES_NEW)生效。
写回答
2回答
-
正解 感谢同学反馈
022020-01-17 -
南下的风
2019-07-03
通过动态代理就可以生效是什么原理?
00
相似问题
@Transactional的问题
回答 1
不能使用域名
回答 1