JPA(Java persistence API), Spring data JPA 和Hibernate的区别

1.简单来说,JPA(Java persistence API)是一套规范,提供了一些编程的API接口。

2.Hibernate是一种ORM框架,是服务厂商对JPA的实现之一,还有很多种其他实现,它们的底层也是基于JPA,可以说是对JPA的继承。比如说对一些注解的使用,如果JPA中已经存在就可以直接使用,不存在的可通过hibernate进行扩充,个人理解,Hibernate与JPA之间相当于父类与子类的关系,前者继承了后者并在其基础上做一定的实现。

3.Spring Data JPA是Spring Data的子模块,是在JPA规范的基础上提供的对repository层的实现,定义了一些通用的怎删改查接口,简化了数据访问层重复代码的编写,把一些通用的方法抽象出来,而ORM部分用哪一套实现可以由自己决定,默认的是使用Hibernate JPA的实现。

特别注意:说JPA的时候得搞清楚说的到底是什么,是Java persistence API还是Spring Data JPA,这两者存在本质上的区别。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容