JPA Spring-Data-JPA hibernate mybatis
2017-06-01 20:00
555 查看
1 Hibernate与 MyBatis的比较:总结的比较全
http://blog.csdn.net/firejuly/article/details/8190229
2 SpringJPA 和 Mybatis之间的关系或者异同:总结的接近本质
https://segmentfault.com/q/1010000006139001?_ea=1041828
1 JPA - Java Persistence API,是从JDK5开始提供的,用来描述对象 <--> 关系表映射关系,并持久化的标准。也就是说,在java中,他只是一套标准接口,没了具体实现,她什么也实现不了。常见的实现有hibernate,spring data jpa。
Mybatis - 另一个思路的持久化层orm框架,与上述的JPA思路不同,他不是依靠ORM描述映射关系来与数据库交互的。具体可以看看MyBatis
vs ORM。
2 个人认为
3 JPA规范与ORM框架的关系如下图:
http://blog.csdn.net/sonny543/article/details/51517413 --stackoverflow答案
http://blog.csdn.net/benjaminlee1/article/details/53087351
spring data jpa是在JPA规范下提供了Repository层的实现,但是使用哪一种ORM需要你来决定。stackoverflow答案。虽然ORM框架都实现了JPA规范,但是在不同的ORM框架之间切换仍然需要编写不同的代码,而通过使用Spring data jpa能够方便大家在不同的ORM框架之间进行切换而不要更改代码。并且spring data jpa 对Repository层封装的很好,也省去了不少的麻烦。
http://blog.csdn.net/firejuly/article/details/8190229
2 SpringJPA 和 Mybatis之间的关系或者异同:总结的接近本质
https://segmentfault.com/q/1010000006139001?_ea=1041828
1 JPA - Java Persistence API,是从JDK5开始提供的,用来描述对象 <--> 关系表映射关系,并持久化的标准。也就是说,在java中,他只是一套标准接口,没了具体实现,她什么也实现不了。常见的实现有hibernate,spring data jpa。
Mybatis - 另一个思路的持久化层orm框架,与上述的JPA思路不同,他不是依靠ORM描述映射关系来与数据库交互的。具体可以看看MyBatis
vs ORM。
2 个人认为
Spring Data JPA并不是一个标准的框架,他只是简化了对
JPA的使用,并没有实现
JPA的规范,也许他们觉得
JPA使用起来有点繁琐,而
JPA本身就是一个规范,是一个接口,要用的话还是需要结合
JPA的实现一起用,比如
Hibernate,或者其他的
JPA实现,比如
Apache OpenJPA。而
Mybatis是一个持久层的框架(并没有实现
JPA的规范,也不是一个完全意义上的
ORM框架),和
Mybatis对标的是
Hibernate(或者说是
JPA,都一个意思),
Spring Data JPA是一个更高层次的。类似的还有
Spring Data MongoDB、
Spring Data Redis。如有不对,请大家不吝赐教。
3 JPA规范与ORM框架的关系如下图:
http://blog.csdn.net/sonny543/article/details/51517413 --stackoverflow答案
http://blog.csdn.net/benjaminlee1/article/details/53087351
spring data jpa是在JPA规范下提供了Repository层的实现,但是使用哪一种ORM需要你来决定。stackoverflow答案。虽然ORM框架都实现了JPA规范,但是在不同的ORM框架之间切换仍然需要编写不同的代码,而通过使用Spring data jpa能够方便大家在不同的ORM框架之间进行切换而不要更改代码。并且spring data jpa 对Repository层封装的很好,也省去了不少的麻烦。
相关文章推荐
- 基于maven的多框架和多视图融合技术(Struts1、Struts2、Spring、SpringMVC、Hibernate、Ibatis、MyBatis、Spring Data JPA、DWR)
- ORM框架--------Hibernate、Mybatis与Spring JPA-Data之间的区别
- jdbc hibernate(session) jpa (entityManager ) spring-data-jpa mybatis完全混用
- spring-data-jpa+hibernate 各种缓存的配置演示
- SpringMVC4+JPA(Hibernate4)+Spring-data-jpa+Shiro整合
- spring data jpa hibernate jpa 三者之间的关系
- 手把手教你从最基本的Java工程搭建SpringMVC+SpringDataJPA+Hibernate(含源码下载)
- 手把手教你从最基本的Java工程搭建SpringMVC+SpringDataJPA+Hibernate(含源码下载)
- spring-data-jpa+hibernate 各种缓存的配置演示
- 数据过滤器注解@Filter 如何在hibernate、spring data jpa中调用
- 基于jpa/springData ,hibernate,mybtis的分页
- 跟着和尚一步一步搭建springmvc+springdata-jpa+mybatis+shiro+bootstrap项目(二)
- Spring ORM+Hibernate?Out!换 Spring Data JPA 吧!
- springmvc + spring data jpa + hibernate 配置
- jpa整合spring和springData出错: Unable to build Hibernate SessionFactory
- Dao层系列-7-Hibernate Spring Data JPA
- java框架整合例子(spring、spring mvc、spring data jpa、hibernate)
- 创建一个SpringBoot + springmvc + hibernateJPA + MyBatis的项目
- SpringMVC +Hibernate JPA+Spring-data-jpa
- Spring ORM+Hibernate?Out!换 Spring Data JPA 吧!