场景:在主流程A(存入数据库)中起了一个异步线程流程B,在流程B中去查询A流程存的数据,此时A中的事务可能还没有提交,此时可能会查询不到存的新数据。
解决方法:
TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronizationAdapter() {
@Override
public void afterCommit() {
}
}
);