JPA与Hibernate
什么是JPA
说JPA先得说下对象关系映射ORM(Object-Relation Mapping),ORM是随面向对象软件开发方法的发展而产生的。面向对象开发方法是当今企业级开发的主流方法,关系型数据库是企业级应用主流存储数据的系统。对象和关系数据是业务实体的两种表现形式,业务实体在内存中表现为对象,在数据库中表现为关系数据。
在没有ORM框架之前,开发者往往要编写大量的、重复的操作数据库的代码。ORM框架则将Java对象映射到关系数据库,能直接持久化Java对象,使开发者能把更多的精力放在了业务上。目前流行的ORM框架有Hibernate、iBatis等。
JPA则是官方提出的持久化标准规范,使用JPA规范可避免使用某些ORM框架而受制于该ORM标准。
JPA(JAVA EE7的描述)包括了:
- The Java Persistence API
- The query language
- The Java Persistence Criteria API
- Object/relational mapping metadata
JPA与Hibernate
JPA只是ORM的规范,没有具体实现,若要使用需配合JPA实现框架。Hibernate封装了JDBC API, 可实现Java对象持久化。
同时Hibernate自3.2版本后开始支持JPA。因此它也是一种JPA实现。
以上参考了相关文档及百科。