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

Java JPA2.0支持自定义用户类型和二级缓存,java,hibernate,jpa-2.0,second-level-cache,terracotta,Java,Hibernate,Jpa 2.0,Second Level Cache,Terracotta,我正试图决定是否从到处散布的Hibernate切换到使用JPA2.0,从而实现提供商的可移植性。 1.JPA2.0是否支持自定义用户类型? 2.我即将实现Terracotta作为Hibernate的二级缓存,主要考虑到它的集群能力。我可以想象,但实际上我不知道,JPA2.0也为二级缓存提供程序定义了一个规范。如果我是对的,兵马俑是否实现了它?(如果有人能给我指点一个关于Terracotta和JPA的入门指南,我将不胜感激) 提前感谢, 伊泰 JPA2.0是否支持自定义用户类型 除了@Embedd

我正试图决定是否从到处散布的
Hibernate
切换到使用
JPA2.0
,从而实现提供商的可移植性。
1.
JPA2.0
是否支持自定义用户类型?
2.我即将实现
Terracotta
作为
Hibernate
的二级缓存,主要考虑到它的集群能力。我可以想象,但实际上我不知道,
JPA2.0
也为二级缓存提供程序定义了一个规范。如果我是对的,兵马俑是否实现了它?(如果有人能给我指点一个关于
Terracotta
JPA
的入门指南,我将不胜感激)

提前感谢,
伊泰

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

除了
@Embedded
@embeddeble
(已经在JPA1.0中)之外,没有其他内容。根据您需求的复杂性,他们可能会完成这项工作)

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

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

工具书类
  • JPA2.0规范
    • 第3.7节“缓存”
    • 第7.10节“缓存接口”
    • 第11.1.7节“可缓存注释”

谢谢您的回复。鉴于我仍在努力理解如何使用JPA2.0以及在何处使用Hibernate本身,如果您能提供更多关于JPA->JPAImpl(我的是Hibernate)->L2CacheProvider之间关系的详细信息,我将不胜感激。L2CacheProvider对JPA是否“不可见”?这意味着我将Terracotta配置为使用Hibernate,就像我刚刚使用Hibernate一样,然后在我的应用程序中使用JPA注释和接口,我可以在哪里?thanks@ittai是的,您将Hibernate(JPA提供程序)配置为使用Terracotta作为二级缓存提供程序,然后使用JPA
Cacheable
注释和查询提示来缓存实体和查询。二级缓存提供程序本身对JPA不可见。您与JPA提供程序交互,JPA提供程序与二级缓存交互。