Hibernate查询缓存并发策略

时间:2012-03-12 04:55:34

标签: java hibernate caching concurrency

Hibernate缓存并发策略是否也适用于其查询缓存(例如,可缓存查询获取一些标量数据,然后两个查询同时修改该标量数据)?如果没有,查询的并发更新(或读取/更新)会发生什么?如果是,如何为查询缓存指定它们?

1 个答案:

答案 0 :(得分:1)

策略如下。

时间戳缓存会跟踪每个表的上次更新时间戳。

每次执行可缓存查询并且结果都在查询缓存中时,Hibernate会检查查询结果的时间戳比查询所关注的每个表的更新时间戳更大(更新)。如果更大,则结果不会过时,并返回缓存的结果。如果较低,则缓存的结果可能过时,并且将对数据库执行查询。