Inf*_*fos 3 hibernate native
休眠问题:
我在源代码中使用本机查询更新表"data"中的列"count".后来我想从表"data"加载所有行,但列"count"的值没有改变.
表"数据"中的行加载有:
... .createQuery("from data").setCacheable(false) .list();
知道什么是错的吗?
JB *_*zet 6
setCacheable(false)没用(这是默认值).它引用的缓存是二级缓存.在执行更新查询之前,您可能已在会话中加载了一些实体(即第一级缓存).在这种情况下,select查询将针对数据库执行,但将从会话中返回已加载的实体.因此,您需要在执行选择查询之前从会话中逐出这些实体,或者完全清除会话.
setCacheable(false)
如果实体缓存在二级缓存中,那么您还必须从二级缓存中逐出它们.请参阅getCache.
归档时间:
14 年,4 月 前
查看次数:
3270 次
最近记录: