Mybatis与JPA的优缺点是什么
本篇内容主要讲解“Mybatis与JPA的优缺点是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Mybatis与JPA的优缺点是什么”吧!
Mybatis与JPA的优缺点
JPA java持久层API
可理解为一种规范,Hibernate就是其具体一个实现。它的实现应用是Spring DataJpa,Spring提供了一套简化开发框架,按照约定好的方法命名规则,编写dao层接口,即可在不编写实现情况下执行数据库操作,还提供了除CRUD以外的功能,比如分页、排序、复杂查询等。SpringDataJpa可以理解为对JPA的再次封装,底层仍旧是Hibernate。
JPA优势
JPA可移植性好,支持Hibernate方言。
提供单表CRUD方法,减少sql语句的编写,开发效率高,。
面向对象开发思想,对象化程度更高。
Mybatis优点
自己编写SQL语句,更灵活、性能较高。
SQL语句与代码相互分离,易于阅读和维护。
提供XML标签#{}、${}、 <if test=""></if>等,支持拼写动态SQL语句。
Mybatis缺点
单表的CRUD操作需要编写SQL语句,库表字段的新增修改删除,都要重新维护。
XML中有大量SQL需维护;参数变更来回切换修改。
Mybatis功能有限。
JPA与Mybatis的区别
其实JPA和mybatis大体上没什么区别,架构上很相似,mybatis就是mapper层,JPA就是repository层,其他都一样的
JPA就是把mapper层的接口换成repository的接口
那么接口具体长什么样呢?
mapper层
自己写sql语句
JPA的repository
没有具体sql语句,看起来没有实现一样,但其实是遵循规则的实现,你只要写 findByXxx(Xxx xx) 就能根据某个键自动实现数据库查询,当然其他的语句也是可以实现的。
如果你觉得不灵活,也可以自己写,例如
最后的nativeQuery一定加上,不然会报错。
到此,相信大家对“Mybatis与JPA的优缺点是什么”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341