TransactionSynchronizationManager控制事务
import org.springframework.transaction.support.TransactionSynchronization;
import org.springframework.transaction.support.TransactionSynchronizationManager;
TransactionSynchronizationManager是事务同步管理器,监听事务的操作,来实现在事务前后可以添加一些指定操作.
@Transactional public void setOrder(Order reques){
//sql 执行
// sql事务完成后 在走推送 redis 的逻辑
// 使用是afterCommit,即数据库操作提交后,就会执行启动任务
TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronization() {
@Override
public void afterCommit() {
try {
//推送 redis 的逻辑
} catch (Exception e) {
//异常打印
}
}
});
}