Spring Data JPA 缓存原数据导致数据更新后无法获取最新数据。
在获取最新的数据的时候,发现获取到的数据还是原来的数据,查看控制台输出,发现并没有走sql查询,只是查询的缓存数据。
解决办法:
1、EntityManager清除缓存后再查询
@Autowired
private EntityManager entityManager;
entityManager.clear();
2、spring.jpa.open-in-view = false; 默认是true的,改为false即可。
参考:
https://www.zhihu.com/question/308222374
https://blog.csdn.net/qq_34173549/article/details/109043847