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