作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 JPA,并且我正在为所有引用实体使用二级缓存。一切正常,我可以从二级缓存中获取实体,因为它们之前已经被选中。
现在,我有两个应用程序,它们都使用相同的数据库(因此它们都使用相同的表、值等)。1.只读应用只是从数据库中读取数据,根本不修改数据库。因此,我为二级缓存选择了“READ_ONLY”并发策略,目的是为了获得更好的性能。2.读写应用程序读写数据库的数据,修改数据库。因此,我必须为二级缓存选择“READ_ WRITE”或“NONSTRICT_ READ_ WRITE”并发策略。
但是,并发策略是在每个实体类的注解中分配的,所以我无法通过编程方式更改它。 (我不为 JPA 使用类映射文件,所以我不能使用两个映射文件,每个映射文件用于同一实体类的不同并发策略。)
我的问题是,有没有什么好的方法可以根据我的2个不同的应用动态改变二级缓存的并发策略?
最佳答案
我没有使用过 Hibernate,但至少如果您使用 JPA,甚至可以使用部署描述 rune 件覆盖单个注释。您还应该能够使用部署描述符覆盖任何特定于供应商的属性。
很遗憾,我不能给你举个例子,但希望这对你有帮助。
关于java - 如何将不同的并发策略分配给同一个(持久性)实体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/916407/
我是一名优秀的程序员,十分优秀!