我正在尝试使用 JBossCache 作为 JPA/Hibernate 二级缓存提供程序来缓存重复调用的查询。查询返回特定类型的实体,我们称之为 FooType。
FooType 如下所示:
@Entity(name = FooType)
@Cache(usage = CacheConcurrencyStrategy.TRANSACTIONAL)
public class FooType {
protected BarType barType;
@ManyToOne(targetEntity = BarType.class, cascade = {
CascadeType.ALL
})
BarType getBarType() {
return barType;
}
}
因此,Footype 具有多对一关联。现在,当我调用查询时,似乎只有很小的一部分被放入缓存中。我认为原因是因为我没有用@Cache标签标记关联。我对么?
但真正的问题是:
BarType 也有一些关联,这些返回的对象也提供关联等,构建了一个大的关联图。现在,我需要
a)注释所有这些类和
b) 还注释关联
为了缓存整个查询?