MyBatis-Plus 入门简介

x33g5p2x  于2021-12-19 转载在 其他  
字(1.5k)|赞(0)|评价(0)|浏览(317)

一、引言

在开发项目时还在为编写或者生成基本的持久层接口和xml浪费时间?

今天小编在搭建项目框架时考虑到,之前所开发的项目中都有大量的xml文件,以及大量重复的持久层CRUD接口。

对于一个有代码洁癖的小编来说有点点受不了,那么就换一个持久层框架吧。

那么问题来了,换什么呢?

二、 mybatis与jpa对比

这里有些同学可能对jpa不太了解,小编简单介绍。

JPA是java持久层的API,现在常用是的Spring Data JPA,它本身是有一定的标准和规范,通过一定的规范编写持久层方法从而达到对数据库进行操作。JPA还提供了除CRUD之外的功能,如分页、排序,复杂查询,当然JAP最底层的实现还是基于hibernate。

Spring Data JPA 官方项目地址:https://spring.io/projects/spring-data-jpa

mybatis 优势

使用过mybatis的同学可能都知道,mybatis对于sql的运用是非常灵活的,可以自由进行控制。mybatis的sql语句都是写在xml文件中,与代码进行了分离,阅读更加直观方便,维护起来也不需要直接修改源代码。mybatis还提供了一系列的xml标签,支持我们编写动态的sql语句。

jpa 优势

当初jpa给小编最大的体验就是基本的CRUD功能是完全不需要写sql语句,也不必去编写基本的持久层接口,上手使用比较快。jpa移植性比较好,如果出现更换数据库甚至可能只需要改动数据库的连接信息即可。jpa它提供了一种面向对象编程的方法,只需要按照一定的规范编写持久层方法则可以省略sql语句的编写,提高了开发效率。

mybatis劣势

mybatis的优势确实很不错,但是使用久了缺点也就慢慢的暴露出来了。

对数据库表进行简单的CRUD的操作也还是需要编写sql语句,现在一般也采用自动生成的xml和持久层接口。虽然是程序自动生成的但是大量的xml文件也难以去维护。并且mybatis自身的功能非常有限,都不支持物理分页,虽然mybatis支持plugin。

三、MP简介

MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。

之前小编的项目都是采用mybatis,所以这里项目当然选择mybatis的增强版呀。

简化开发、提高效率,这是Mybatis-Plus核心思想。

Mybatis-Plus有什么特性呢?

在使用过程中,MP提供一套通用的Mapper和Server的操作,只需要继承简单配置即可使用单表大部分CRUD操作。MP还支持Lambda形式调用、支持多种数据库操作。MP内置也有代码生成器、物理分页插件,MP的内置生成器不仅仅生成实体、持久层接口、xml文件,还可以生成server以及controller等等。

MyBatis-Plus 官方文档:https://mp.baomidou.com/

码云项目地址:https://gitee.com/baomidou/mybatis-plus

GitHub地址:https://github.com/baomidou/mybatis-plus

MyBatis-Plus开发组织:https://gitee.com/baomidou

这里小编对于MP的特性就不做过多的介绍了,具体可以查看相关文档,也可以下载项目研究它的源码。小编后期也就陆陆续续编写Mybatis-Plus实战相关操作。

感兴趣的小伙伴赶紧动手操作入门实战案例吧:https://jiannan.blog.csdn.net/article/details/91386151

相关文章