TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronization() {
@Override
public void afterCommit() {
// TODO do your afterCommit biz
sentMq();
}
});
或者
public void programmaticTransaction() {
String data = transactionTemplate.execute(new TransactionCallback<String>() {
@Override
public String doInTransaction(TransactionStatus status ) {
// TODO your biz
return "data";
}
});
sentMq();
}
在spring的原生事务中,也可通过
或者
这两种方式实现事务提交后发送MQ消息, 但是本地多数据源使用@DSTransactional注解,如何实现事务提交后发送MQ 消息的逻辑? 望解疑惑!