1.解释hibernate之前先了解下什么是orm,orm是object relation mapping,即对象关系映射,object可以理解成java实体类entity,relation是关系型数据库中的二维表,mapping是java对象到数据库表记录的映射;
2.hibernate是一种强大的orm框架,着手解决如何实现映射的方案,是一种处理映射关系方法类框架;
3.jpa,java persistence api,即java 持久化api,是一种官方标准(接口),因为官方没有好的解决方案,而hibernate是第三方的,所以厚颜无耻的在有了具体解决方案后提出一种标准,实际是sun的ejb斗不过spring的结果(想听故事自行百度),jpa的具体解决方案不止hibernate一种,还有toplink、jdo、open等,可以简单理解成jpa是接口,hibernate是实现类;
4.spring data jpa是强大的spring data系列的一部分,可以轻松实现基于jpa的存储库,此模块处理对基于jpa的数据访问层的增强支持,它使构建使用数据访问技术的spring驱动应用程序变得更加容易。简单理解就是spring对jpa的更高层次的抽离,也是一种规范,需要具体实现,如hibernate,不过在此基础上又实现了一些功能,比如可以根据dao接口中的方法名智能实现dao的实现,所有你只需要写dao接口,不需要写实现,不过方法名必须符合规则,具体规则自行百度。
如对本文有疑问, 点击进行留言回复!!
【java基础】面试常见问题:类和对象,封装继承多态,final关键字,static关键字,类加载过程,双亲委派模型
荐 Java语言基础之JDK1.8新特性(Lambda表达式、函数式接口、Stream流、新的日期API)
网友评论