hibernate 缓存失效解决办法

问题发现

生产环境中,发现前后两次查询出来的信息不一样。

前两次是查询的id,第二次查询的是名称。
在这里插入图片描述

可以看出发短信前后的 案件信息是一样的,更新时间为 dOperatetime : 1665923595886 即2022-10-16 20:31:43。

但是发短信时查出的案件信息 中 cCbr 这个信息就不一样了,而这一次查出来的 dOperatetime是 1663726867633 即2022-09-21 10:21:07 。

目前判断是进行 cCbr 的更新后,hibernate 的缓存并没有去刷新,导致 通过id 和 名称 去查出来的 信息不一致。 缓存失效原因还不确定,记下这个问题,如果有知道的大佬请指教。
解决办法:

1、不走hibernate 查询,通过jdbc 直接查数据库。 因为此时数据库的数据是更新后的数据。

2、手动刷新hibernate 缓存(建议此方法)。

更多推荐