问题描述:
对外开发接口A中, 业务方法a()上添加@Transactional注解,然后在方法a()中先直接调用了操作了数据库的mapper,然后通过http回调用其他项目接口,这个回调接口会接着调用我的另外一个接口B,在接口B的业务方法b()中会查询方法a()中修改的数据结果,以此来验证需不需要往下走方法b()。
问题现象:数据确实修改了,但是方法b()中却验证不通过。
本地简单模拟代码,初始写法,方法添加@Transactional,数据库默认级别可重复读
结论:
因为项目刚接手,前人代码也不规范,这确实是一个粗心导致的小问题,问题根本就是事务没有提交,导致了数据不一致问题
查询结果的输出为http调用的接口输出的,发现为修改删除标识