什么是JPA
JPA(Java Persistence API) 是Sun官方提出的Java持久化规范。它为Java开发人员提供了对象/关系映射工具来管理Java应用中的关系数据。
持久化
持久化(Persistence),就是把数据(内存中的对象)保存到可永久保存的存储设备中,如磁盘)。持久化的主要应用是将内存中的对象存在到数据库中,或是磁盘文件、XML数据文件等。
持久化是将程序数据在持久状态和瞬时状态转换的机制。
JDBC就是一种持久化机制,文件IO也是。
持久化规范
Sun针对持久化这一操作制定的规范,一种约定俗成的标准。
什么是Hibernate?
一个开源的对象关系映射框架,对JDBC进行了非常轻量级的对象封装。将POJO与数据表建立映射关系,是一个全自动的ORM框架。可以自动生成SQL语句,自动执行。使用面向对象编程思维来操作数据库
什么是ORM?
Object RelaonalMapping,简称ORM是一种程序设计技术,用于实现面向对象编程语言里不同类型系统的数据之间的转换。从效果上说,它其实是创建了一个可在编程语言里使用的虚拟对象数据库。
什么是Spring Data?
是一个用于简化数据库访问,并支持云服务的开源框架。
主要目标:使得数据库的访问变得方便,并支持map-reduce框架和云计算数据服务关系数据库的数据服务海量数据项目Spring Data会让数据的访问变得更加方便。
JPA/Hibernate的关系?
JPA是一种规范,Hibernate是它的一种实现。其他产品:Mybas、EclipseLink、OpenJPA。
JPA是接口规范,更换实现不需要改动太多代码。