在项目中遇到一个问题(项目没上分布式事务)。在服务间调用的过程中,服务1调到服务2进行插入数据,插入成功后在服务1的后续代码查询不到服务2插入的数据。发现是事务的问题,但是其中原理还不是很清楚。
后续解决办法是
TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronizationAdapter() {
@Override
public void afterCommit() {
//需要提交之后执行的代码
}
});
在事务提交之后执行,就解决了问题。