(一)前言
最早写JDBC的时候,要手动配连接信息,要一条条手写sql语句。后来Mybatis出现了,不需要再手动配置连接信息,sql语句也和代码隔离开来,但是还免不了写Sql。接着出现了MybatisPlus,这下连Sql都不用写了。
(二)什么是MybatisPlus
首先还是把官网地址拿出来:
mp.baomidou.com/guide/
简单来讲,MybatisPlus是Mybatis的增强工具,简化开发,提高开发效率。在官网中,他用这样一幅图表示MybatisPlus和Mybatis之间的关系。
在图片中,MybatisPlus表示它和Mybatis之间的关系就像魂斗罗中的两兄弟一样,互相不会影响,但是能帮你在打怪路上更加轻松。
(三)前置准备
在讲解MybatisPlus之前,我们先准备一批数据
(四)Mybatis快速入门
1、引入最新的依赖
2、在配置中心配置数据库连接信息
3、在Spring start类中add MapperScan注解
4、创建mapper,DO
MybatisPlus可以自动生成Mapper、DO、Service、Controller,这里作为教程,手动建立。MybatisPlus和Mybatis的第一个不同点,这里使用@TableName注解标明当前的实体类对应哪个表
创建Mapper类时,继承BaseMapper类,这是MybatisPlus提供的一个基类,封装了常用的查询操作
5、查询数据
在使用Mybatis时,数据的CRUD都需要编写sql才能实现,MybatisPlus提供的BaseMapper既提供了Mapper层面的封装接口,又提供了Service层面的封装接口。基于以往的写法,平常开发中会更加倾向于使用Mapper层面的接口 介绍Mapper层面的几个接口:
比如我想查询user表的数据量,我就可以直接调用:
MybatisPlus提供了一个条件构造器Wrappers,可以通过Wrappers构造一系列条件,比如查询username为name1的数据
又比如我想查询id大于5的数据
6、数据插入
数据的查询使用上面的方式没有任何问题,插入数据时有几个可以优化的地方,我们可以通过一个注解@TableId设置主键自增方式,可以通过@TableField注解设置数据的自动填充。 因此修改一下UserDO这个类:
在实体类中,设置id自增,设置gmtCreate在插入时自动填充,设置gmtModified在创建和修改时自动填充,接着配置自动填充规则:
最后直接调用API插入数据
更多的查询方法可以参考官网,十分详细。但是如果你的sql涉及到多表的连表操作,还是可以自己和MyBatis一样手写sql。
(五)总结
至此,你应该对MybatisPlus有了大致的了解,另外值得一提的是MybatisPlus的开源组织苞米豆是国内的组织,因此这份文档对国内开发人员来说特别友好,可放心使用。