亲宝软件园·资讯

展开

SpringBoot图文教程11—从此不写mapper文件「SpringBoot集成MybatisPlus」

鹿老师的Java笔记 人气:0
![](https://img2020.cnblogs.com/blog/1003051/202003/1003051-20200305210955270-1925372518.png) > **有天上飞的概念,就要有落地的实现** > > - 概念十遍不如代码一遍,朋友,希望你把文中所有的代码案例都敲一遍 > > - 先赞后看,养成习惯 **SpringBoot 图文教程系列文章目录** 1. [SpringBoot图文教程1「概念+案例 思维导图」「基础篇上」](https://mp.weixin.qq.com/s/phk6j3ChBP-kPtS2xZeEZg) 2. [SpringBoot图文教程2—日志的使用「logback」「log4j」](https://mp.weixin.qq.com/s/7Mw_xhFF4Q5NtdtcsHc67Q) 3. [SpringBoot图文教程3—「‘初恋’情结」集成Jsp](https://mp.weixin.qq.com/s/BYzVg5NBcF_ou_PyX8ygag) 4. [SpringBoot图文教程4—SpringBoot 实现文件上传下载](https://mp.weixin.qq.com/s/6ctykPo3eDBEB7YsC0PAZw) 5. [SpringBoot图文教程5—SpringBoot 中使用Aop](https://mp.weixin.qq.com/s/17qMRlv_mUfwkcVD05Bh2g) 6. [SpringBoot图文教程6—SpringBoot中过滤器的使用](https://mp.weixin.qq.com/s/r2BO4UMNRAw_REA6nNFLKw) 7. [SpringBoot图文教程7—SpringBoot拦截器的使用姿势这都有](https://mp.weixin.qq.com/s/YpDhuOTpt1vjYjnhnK8YdQ) 8. [SpringBoot图文教程8 — SpringBoot集成MBG「代码生成器」](https://mp.weixin.qq.com/s/uGYO4fkw03Kxpfp_PIA8rQ) 9. [SpringBoot图文教程9—SpringBoot 导入导出 Excel 「Apache Poi」](https://mp.weixin.qq.com/s/BXfxhO5rFFg6XZQ0rZgGMg) 10. [SpringBoot图文教程10—模板导出|百万数据Excel导出|图片导出「easypoi」](https://mp.weixin.qq.com/s/8Yqfn27UCFP2lU3_IYb5AQ) ## 前言 在使用Mybatis进行项目开发的时候,最繁琐的事情就是实体类,dao接口,mapper.xml文件的编写,几乎每个表都需要对应写一套,并且大部分的工作量都在最基本的增删改查上。如果表中的字段进行了修改,那么实体类,mapper文件甚至dao接口都要进行修改。 ![](https://img2020.cnblogs.com/blog/1003051/202003/1003051-20200305210956498-1104293424.png) **在之前的文章中介绍了 MBG(Mybatis 代码生成器) 的使用,今天带来更进一步的简化Mybatis开发的工具 MybatisPlus,后续还会有 通用Mapper,总有一款适合你。** ## MybatisPlus > MybatisPlus 可以认为一个Mybatis的外挂,用了这个技术之后 可以不写mapper文件 可以不写dao接口中的方法 然后实现增删改查 分页查询 条件查询 等等 > ### 什么是Mybatis Plus [MyBatis-Plus](https://github.com/baomidou/mybatis-plus)(简称 MP)是一个 [MyBatis](http://www.mybatis.org/mybatis-3/) 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。 > 在 MyBatis 的基础上只做增强不做改变 > > 意味着 如果你导入了Mybatisplus的依赖 但是不想用Mybatisplus的方法 ,那么 不会影响到Mybatis的正常使用 > > 官方文档:https://mp.baomidou.com/guide/crud-interface.html#page ### MybatisPlus的使用 #### 集成项目 1. 导入Mybatisplus的依赖 > **注意:要首先删除Mybatis的依赖**,因为Mybatisplus中包含有Mybatis的依赖 不需要独立导入 容易jar包冲突 > > ![](https://img2020.cnblogs.com/blog/1003051/202003/1003051-20200305210958565-447167527.png) ``` ``` 2. 修改配置文件 ![](https://img2020.cnblogs.com/blog/1003051/202003/1003051-20200305210959510-482366574.png) #### 通过MybatisPlus实现增删改查 > 教程新手向,只讲解Mybatis最常用,最基本的API,更多的操作请参考官方文档 > **demo使用到的数据库库表如下** > ![](https://img2020.cnblogs.com/blog/1003051/202003/1003051-20200305211002236-578444407.png) 1. 给要数据库操作的实体类加Mybatisplus的注解 > 因为Mybatisplus不需要写mapper文件 不需要写sql 那么Mybatisplus怎么知道实体类和数据库表映射关系(ORM) 通过注解表明这种关系 ``` /** * @TableName("cmfz_admin") 将当前的实体类和数据库的表建立联系 * 注解参数:表名 */ @TableName("cmfz_admin") @Data public class CmfzAdmin implements Serializable { /** * 主键属性 @TableId * * value 该属性对应的数据库表中的字段名 * type 主键自增的类型 AUTO 代表自动递增 */ @TableId(value = "id",type = IdType.AUTO) private Integer id; /** * 非主键属性 @TableField * @TableField("username") 参数为该属性对应的数据库表中的字段名 * */ @TableField("username") private String username; @TableField("password") private String password; } ``` 2. 创建dao接口 ```java import com.baizhi.entity.CmfzAdmin; import com.baomidou.mybatisplus.core.mapper.BaseMapper; /** * 注意: * 1.接口中不需要写方法 * 2.接口需要继承MybatisPlus中的类 BaseMapper 泛型为 当前dao对应的实体类 */ public interface CmfzAdminDao extends BaseMapper

加载全部内容

相关教程
猜你喜欢
用户评论