我刚听说JPA规范现在可以用于nosql数据库。我的问题是,它和我们用于关系型数据库的JPA规范是否相同?因为关系型数据库和nosql数据库之间有很多区别,特别是当我们谈论事务时,两者完全不同。Oracle发布了一个涵盖nosql数据库新变化的新规范吗?
敬礼
我刚听说JPA规范现在可以用于nosql数据库。我的问题是,它和我们用于关系型数据库的JPA规范是否相同?因为关系型数据库和nosql数据库之间有很多区别,特别是当我们谈论事务时,两者完全不同。Oracle发布了一个涵盖nosql数据库新变化的新规范吗?
敬礼
JPA
完全是为关系型数据库数据存储定义的。请参阅Oracle规范。
一些著名的JPA
实现已经扩展了他们对JPA的支持,以允许使用同一API使用一些非关系型数据库(最初这样做的是DataNucleus JPA,但自那以后Hibernate和EclipseLink也复制了这一点)。虽然您可以使用相同的API进行持久化,但您必须意识到您需要做出一些妥协,因为特别是查询语言并不总是适合非关系型数据库。我不知道是否有计划发布面向非关系型数据库的JPA
规范。
有一个适用于关系型数据库和非关系型数据库的JDO
(Java数据对象)持久性规范,而且JDO API更适合许多不同类型的数据存储。