5

我正在尝试决定是否从Hibernate洒满全身切换到使用JPA2.0,从而成为可移植的提供商。
1.是否JPA2.0支持自定义用户类型?
2.我即将Terracotta作为二级缓存实现Hibernate,主要考虑到它的集群能力。我可以想象,但我实际上并不知道,这JPA2.0也定义了二级缓存提供程序的规范。如果我是对的,是否Terracotta实施?(如果有人可以指出我的入门TerracottaJPA我会很感激)。

提前致谢,
Ittai

4

1 回答 1

7

JPA2.0 是否支持自定义用户类型?

没有什么超出@Embedded@Embeddable(已经在 J​​PA 1.0 中)。根据您需求的复杂性,他们可能会完成这项工作)。

我可以想象,但我实际上并不知道,JPA2.0 还定义了二级缓存提供程序的规范。

JPA 2.0 定义了EntityManager访问由持久性提供程序维护的二级缓存的方法、Cacheable注释和其他一些东西。但是在 JPA 提供者上插入缓存的方法是特定于提供者的。所以不,JPA 没有为 L2 缓存提供程序定义规范。如果您想使用 Terracota 作为 L2 缓存提供程序,并将 Hibernate 作为 JPA 2.0 实现,请查看 Hibernate 集成文档。

参考

  • JPA 2.0 规范
    • 第 3.7 节“缓存”
    • 第 7.10 节“缓存接口”
    • 第 11.1.7 节“可缓存注释”
于 2010-09-02T15:14:11.043 回答