spring-data-jpa简单介绍
这里是修真院后端小课堂,每篇分享文从 【背景介绍】【知识剖析】【常见问题】【解决方案】【编码实战】【扩展思考】【更多讨论】【参考文献】 八个方面深度解析后端知识/技能,本篇分享的是: 【spring-data-jpa简单介绍】 【修真院Java小课堂】spring-data-jpa简单介绍 开场语: 大家好,我是IT修真院北京分院第32期的学员廖友,一枚正直纯洁善良的Java程序员,今天给大家分享一下,修真院官网Java任务十中的知识点——spring-data-jpa简单介绍 一、背景介绍: 1、Spring Data是什么? Spring Data 项目的目的是为了简化构建基于 Spring 框架应用的数据访问技术,包括关系数据库、非关系数据库、Map-Reduce 框架、云数据服务等等。 2、什么是JPA? JPA是Java Persistence API的简称,中文名Java持久层API,是JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中。 二、知识剖析: 1、Hibernate Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hibernate可以自动生成SQL语句,自动执行,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 2、Hibernate的优缺点 Hibernate优点:面向对象、有更好的移植性、开发的效率高。 Hibernate缺点:运行效率慢、结构臃肿、JPQL/HQL存在硬伤。 使用建议:建议Hibernate用在用户量不大,或需要敏捷开发的企业级应用;互联网项目慎用、慎用、慎用。 3、基本操作CRUD 编写接口继承jpaRepository,则可以直接调用接口中的方法完成crud操作 4、JPA数据查询 使用JPQL语言编写查询语句 5、关系映射Mapping 将数据库中的表字段映射成Java对象中的属性。 三、编码实战 四、参考文献: [1]https://www.ibm.com/developerworks/cn/opensource/os-cn-spring-jpa/index.html [2]http://blog.51cto.com/12348890/2092279 [3]https://www.cnblogs.com/cmfwm/p/8109433.html 五、更多讨论: Q1:可以基于mybatis使用JPA进行crud吗? A1:不能,mybatis不是jpa规范的实现,只有jpa规范的实现才可以使用JPA进行数据操作。 Q2:Hibernate的移植性体现在什么地方? A2:不同数据库厂商的sql语句是有区别的,Hibernate对不同厂商的sql语句进行了封装,使得它能兼容目前主流的数据库,即我们使用JPQL编写的语句,可以在不同的数据库上进行操作。 Q3:为什么在互联网项目中慎用hibernate? A3:因为hibernate对sql语句进行了封装,使得我们不好对sql进行优化,而使用hibernate自己生成的sql语句,运行效率低,无法应对高并发的场景。 六、结束语: 今天的分享就到这里啦,欢迎大家点赞、转发、留言、拍砖~ PPT链接?视频链接 更多内容,可以加入IT交流群565734203与大家一起讨论交流 这里是技能树·IT修真院:,初学者转行到互联网的聚集地 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |