几天后hibernate缓存过期

时间:2017-04-03 15:19:42

标签: java hibernate caching

应用程序正在使用Hibernate 3,需要在保存到数据库时缓存数据。

  1. 是否可以只缓存实体的几列而不是全部?

  2. 几天后是否可以设置实体的到期时间?例如,是否可以将到期时间设置为3天,以便3天后可以从缓存中自动删除记录?

  3. 我已经开始研究缓存过程,但不确定是否可以满足上述两个需求。

2 个答案:

答案 0 :(得分:0)

  1. 不可以,只能在Hibernate二级缓存中为实体缓存一个列的子集,否则Hibernate无论如何都需要在组装这样的实体实例时去数据库获取剩余的数据,因此打败缓存的目的。
  2. 是的,可以设置缓存数据的到期时间。 Hibernate将其留给L2缓存提供程序来管理到期和驱逐策略,因此您需要在那里进行配置(请参阅您使用的缓存提供程序的文档)。
  3. 更多详情herehere

答案 1 :(得分:0)

1)是,将其他字段设为瞬时,这样它们就不会参与二级缓存pr