jpa进行update的操作后,更新了数据库,但是一级缓存没有更新,所以紧接着查询出来的是缓存中的旧数据,此时只要在对应的
update方法上加入@Modifying(clearAutomatically = true)即可,它更新完数据库后会主动清理一级缓存。
@Transactional @Modifying @Query(value = "update new_user_news_pool p set p.status=?2 where p.pk=?1 ", nativeQuery = true) int updateStatusByPk(long pk, int status);