环境-
Hibernate-查询缓存和二级缓存已启用
使用的缓存 - Ehcache 与 updatetimestampcache 设置为永恒。
问题- 对于实体 E,我在表中有 2 行。因此,在通过具有 setcacheable(true) 的条件进行查询(获取所有行)时,第一次填充二级缓存和查询缓存。
使用 setcacheable(true) 通过条件进一步执行相同查询的任何进一步执行都是从查询缓存中提供的。到目前为止,一切都很好。
问题-在使用休眠状态保存实体 E 的新对象后(现在实体 E 的表中没有 3 行),通过事务服务层方法。为实体 E 获取行的任何进一步查询(使用 setcacheable(true))仅返回 2 个对象。其中应该返回 3 个对象。
当新实体保存在其表中时,似乎未验证实体 E 的查询缓存。