JPA2中新增内容的简明清晰列表?
有人知道JPA 2中有什么新内容吗? 在支持JPA 2的版本中,不是Hibernate / TopLink的新function,而是实际规范中的新function。
接受的答案中提到的链接没有说明二级缓存,所以我决定发布一个快速列表来总结“JPA 2.0中的新function(JSR-317)”:
-
persistence.xml
标准属性 – 例如javax.persistence.jdbc.driver
等,而不是持久性提供程序特定的属性。 - 混合访问类型 –
PROPERTY
和FIELD
访问类型可以在层次结构中混合并组合在一个类中。 - 派生标识符 – 标识符可以从关系中派生。
-
@OrderColumn
,@OrderColumn
– 为了更好的collections支持。 - 单向
@OneToMany
/@OneToOne
– 用于扩展映射。 - 共享缓存API – JPA中的二级缓存 , 是的 !
- 锁定 – 增加了对悲观锁定的支持。
- 增强的JP QL – 时间戳文字,非多态查询,IN表达式中的集合参数,有序列表索引,CASE语句。
- 表达式和标准API – 用于类型安全查询的编程构造的
QueryBuilder
和CriteriaQuery
。 - API添加 –
EntityManager
上的附加API(支持的属性,detach
方法等)和Query
(查询提示)。 - validation – 如果提供者存在,则透明支持Beanvalidation(JSR-303)。 (validation是可选的,JPA 2.0规范不需要Beanvalidation实现)。
关于这个问题,这个链接可能不是100%精确,但它是一个非常好的信息来源。