Java 缓存由其他实体映射的关系
我正在尝试缓存一些只有在服务器关闭时才会更改的实体。以下是一个例子:Java 缓存由其他实体映射的关系,java,hibernate,jpa,hibernate-cache,Java,Hibernate,Jpa,Hibernate Cache,我正在尝试缓存一些只有在服务器关闭时才会更改的实体。以下是一个例子: @Entity @Cache(usage=CacheConcurrencyStrategy.READ_ONLY) public class Season { @Cache(usage=CacheConcurrencyStrategy.READ_ONLY) @OneToOne(cascade=CascadeType.PERSIST, fetch=FetchType.EAGER) @JoinColumn(
@Entity
@Cache(usage=CacheConcurrencyStrategy.READ_ONLY)
public class Season {
@Cache(usage=CacheConcurrencyStrategy.READ_ONLY)
@OneToOne(cascade=CascadeType.PERSIST, fetch=FetchType.EAGER)
@JoinColumn(name="next_id")
protected Season next;
}
这很有效
但是当我添加反向关系时,我看到hibernate在数据库中查询该关系
@Entity
@Cache(usage=CacheConcurrencyStrategy.READ_ONLY)
public class Season {
@Cache(usage=CacheConcurrencyStrategy.READ_ONLY)
@OneToOne(cascade=CascadeType.PERSIST, fetch=FetchType.EAGER)
@JoinColumn(name="next_id")
protected Season next;
@Cache(usage=CacheConcurrencyStrategy.READ_ONLY)
@OneToOne(mappedBy="next", fetch=FetchType.EAGER)
protected Season previous;
}
无论我说它是渴望还是懒惰都没有区别
如何配置缓存/实体/关系,以便将季节实体完全缓存,包括“下一个”和“上一个”关系
如果JPA的@Cacheable有办法做到这一点,我更希望如此。这里是你的问题的一部分,问题仍然悬而未决!现在我可以停止寻找我的错误了。