3

我有一个启用 Hibernate 二级缓存的场景,我想缓存一个实体,该实体每天创建 1000 个实例并保留 8 年,但查询仅处理最近 2 天。我想避免创建历史表,因为对于历史查找的罕见情况,代码取决于日期。

在 Hibernate 中,使用 Infinispan 作为 Level-2 提供者,是否可以非常具体地配置具有特定属性(驱逐策略、大小等)的特定缓存,Hibernate 应该将其用于实体 Foo?

4

1 回答 1

1

是的。在 Hibernate 中,您可以有 N 个缓存“区域”,它们可以有不同的配置,并且可以特定于某些实体。配置本身取决于提供者(在您的情况下为 Infinispan)。有关 Infinispan 配置的更多详细信息,请参阅此文档:

http://community.jboss.org/wiki/usinginfinispanasjpahibernatesecondlevelcacheprovider#Advanced_Configuration

查看有关如何覆盖实体/集合的默认值的示例。在那里,您可以设置驱逐策略、生命周期和要保留在缓存中的实体数量。

于 2011-02-10T07:01:25.903 回答