用@注解配置事务时,每个方法只能配置一个事务处理器,那这个方法内操作了多个数据源时需要配置多个事务处理器,如何配置呢?求大神帮忙。
关键代码如下:
@Transactional(value="repayment_dbTransactionManager")
public void doTask() {}
每个事务源写个方法,添加事务注解,然后你这个方法分别调用各个事务源的方法
@airfling,这样的话,代码会被拆分的很混乱吧。
可以用aop去拦截 method name 进行控制
比如
只读
读写
但是这个不灵活对开发命名要求比较规范而且嵌套事务可能导致一些问题
多数据源的问题,跟这个没关系,就算你配置了也无法回滚生效