Hibernate缓存并发策略是否也适用于其查询缓存(例如,可缓存查询获取一些标量数据,然后两个查询同时修改该标量数据)?如果没有,查询的并发更新(或读取/更新)会发生什么?如果是,如何为查询缓存指定它们?
答案 0 :(得分:1)
策略如下。
时间戳缓存会跟踪每个表的上次更新时间戳。
每次执行可缓存查询并且结果都在查询缓存中时,Hibernate会检查查询结果的时间戳比查询所关注的每个表的更新时间戳更大(更新)。如果更大,则结果不会过时,并返回缓存的结果。如果较低,则缓存的结果可能过时,并且将对数据库执行查询。