JPA2.0支持自定义用户类型和二级缓存

Itt*_*tai 5 java hibernate terracotta second-level-cache jpa-2.0

我正在尝试决定是否从Hibernate全身使用转为使用JPA2.0,从而提供便携式设备.
1. JPA2.0支持自定义用户类型吗?
2.我正处于实现Terracotta二级缓存的边缘,Hibernate主要考虑其聚类能力.我想,但我实际上并不知道,这JPA2.0也定义了二级缓存提供程序的规范.如果我是对的,是否Terracotta实施了它?(如果有人能指出我的入门Terracotta,JPA我会很感激).

感谢提前,
Ittai

Pas*_*ent 7

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

没有什么比(@Embedded@Embeddable已经在JPA 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节"可缓存的注释"