经过几个小时的谷歌搜索,我意识到用户可以使用 xml 文件(orm.xml,我想?)或 JPA 中的注释,或同时使用两者。我是对的吗?所以,我的项目使用了二级缓存,这不在JPA规范中。我使用如下注释:@org.hibernate.annotations.cache(usage = org.hibernate.annotations.cacheconcurrencystrategy.read_write)

对于每个实体。但是,我猜上面的注释不属于JPA注释,因此,我不知道orm.xml中是否有等效的东西?我查看了 orm.xml 的 xml 模式,该模式中不允许存在此类 hibernate 元素。

如果我无法在orm.xml中进行二级缓存配置,除了注释之外还有其他方法吗?我不想做注释的原因是因为我有两个应用程序,一个使用 READ_WRITE 并发策略,另一个使用 READ_ONLY 并发策略。

提前致谢!!!

科威

有帮助吗?

解决方案 3

所以因此,我认为我的问题目前的解决办法是更换与Hibernate映射文件中的每个实体的所有注释,以便为不同的部署(应用程序也一样),我们可以使用不同的Hibernate映射文件。

其他提示

您可以使用的hibernate.cfg.xml,hibernate.properties还是*的.hbm.xml文件打开缓存在不同的缓存策略

特定对象

如果您不想使用注释,请检查 hibernate 二级缓存实现的文档(也称为“缓存提供程序”,例如, 高速缓存)如何配置它。

请注意,Hibernate 允许使用不同的缓存提供程序,因此您的问题没有通用答案。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top