主页 > 经验 > jpa和hibernate的区别
jpa和hibernate的区别
Jpa是Java Persistence API的全名,可以通过注释或XML描述之间的映射关系,将实体对象持久保存到数据库。JPA是一组ORM规范,Hibernate实现了JPA规范。JPA和Hibernate之间的关系可以简单地理解为JPA是标准接口,Hibernate是实现。Hibernate主要通过三个组件实现这种关系,分别是hibernate-annotation,hibernate-entitymanager和hibernate-core。
JPA的主要目标之一是提供更简单的编程模型。在JPA框架中创建实体就像创建Java类一样简单,没有约束或限制。只需使用javax.persistence.Entity注释JPA框架和接口。开发人员需要掌握的特殊规则和设计模式并不多。
资料拓展:JPA的查询语言是面向对象而非面向数据库的,它以面向对象的自然语法构造查询语句,可以看成是Hibernate HQL的等价物。JPA定义了独特的JPQL(Java Persistence Query Language),JPQL是EJB QL的一种扩展,它是针对实体的一种查询语言,操作对象是实体。
JPA的主要目标之一是提供更简单的编程模型。在JPA框架中创建实体就像创建Java类一样简单,没有约束或限制。只需使用javax.persistence.Entity注释JPA框架和接口。开发人员需要掌握的特殊规则和设计模式并不多。
资料拓展:JPA的查询语言是面向对象而非面向数据库的,它以面向对象的自然语法构造查询语句,可以看成是Hibernate HQL的等价物。JPA定义了独特的JPQL(Java Persistence Query Language),JPQL是EJB QL的一种扩展,它是针对实体的一种查询语言,操作对象是实体。