4

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

对于每个实体。但是,我猜上面的注解不属于JPA注解,因此,我不知道orm.xml中是否有任何等价的东西?我已经查看了 orm.xml 的 xml 架构,并且架构中不允许这样的休眠元素。

如果我不能在orm.xml中做二级缓存配置,除了注解还有什么办法吗?我不想做注释的原因是因为我有两个应用程序,一个使用 READ_WRITE 并发策略,另一个使用 READ_ONLY 并发策略。

提前致谢!!!

科威

4

3 回答 3

2

您可以使用 hibernate.cfg.xml、hibernate.properties 或 *.hbm.xml 文件来打开具有不同缓存策略的特定对象的缓存

于 2009-05-28T11:54:50.657 回答
1

如果您不想使用注释,请查看您的休眠二级缓存实现(又名“缓存提供程序”,例如ehcache)的文档如何配置它。

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

于 2009-05-28T12:11:50.950 回答
0

因此,我认为当前解决我的问题的方法是用 Hibernate 映射文件替换每个实体的所有注释,以便对于不同的部署(也包括应用程序),我们可以使用不同的 Hibernate 映射文件。

于 2009-05-29T11:29:27.323 回答