还不会用mybatis-plus,手把手教你

本文主要介绍mybatis-plus这款插件 , 针对springboot用户 。包括引入 , 配置 , 使用 , 以及扩展等常用的方面做一个汇总整理 , 尽量包含大家常用的场景内容 。

本文项目代码gitee地址: gitee.com/wei_rong_xi…
关于mybatis-plus是什么 , 不多做介绍了 , 看官方文档:baomidou.com/ , 咱们直接代码撸起来 。
一、快速开始本文基于springboot、maven、jdk1.8、MySQL开发 , 所以开始前我们需要准备好这套环境 。我的环境使用了nacos作为注册中心 , 不了解或需要搭建的参考:nacos2.0搭建与配置
新建如下数据库:
还不会用mybatis-plus,手把手教你

文章插图
 
建议大家选择utf8mb4这种字符集 , 做过微信的同学应该会知道 , 微信用户名称的表情 , 是需要这种字符集才能存储的 。
我就默认其他环境已经准备好了 , 咱们直接从mybatis-plus开始 。
1.1 依赖准备想要什么依赖版本的去maven仓库查看:maven仓库地址
引入mybatis-plus依赖:
<dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.5.0</version></dependency>复制代码引入mysql依赖:
<dependency><groupId>mysql</groupId><artifactId>mysql-connector-JAVA</artifactId><version>8.0.27</version></dependency>复制代码目前 , 多数项目会有多数据源的要求 , 或者是主从部署的要求 , 所以我们还需要引入mybatis-plus关于多数据源的依赖:
<!-- mybatis-plus 多数据源 --><dependency><groupId>com.baomidou</groupId><artifactId>dynamic-datasource-spring-boot-starter</artifactId><version>3.5.0</version></dependency>复制代码1.2 配置准备springboot启动类 。配置@MApperScan注解 , 用于扫描Mapper文件位置:
import org.mybatis.spring.annotation.MapperScan;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.cloud.client.discovery.EnableDiscoveryClient;@EnableDiscoveryClient@MapperScan("com.wjbgn.user.mapper")@SpringBootApplicationpublic class RobNecessitiesUserApplication {public static void main(String[] args) {SpringApplication.run(RobNecessitiesUserApplication.class, args);}}复制代码数据源配置 , 此处配置一主一从的环境 , 当前我只有一台 , 所以此处配置一样的:
spring:datasource:dynamic:primary: master #设置默认的数据源或者数据源组,默认值即为masterstrict: false #严格匹配数据源,默认false. true未匹配到指定数据源时抛异常,false使用默认数据源datasource:master:url: jdbc:mysql://127.0.0.1:3306/rob_necessities?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone =Asia/Shanghaiusername: rootpassword: 123456slave_1:url: jdbc:mysql://127.0.0.1:3306/rob_necessities?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone =Asia/Shanghaiusername: rootpassword: 123456复制代码1.3 启动服务下面直接启动服务:
还不会用mybatis-plus,手把手教你

文章插图
 
得到如上结果表示启动成功了 。
二、使用前面我们成功的集成进来了mybatis-plus , 配合springboot使用不要太方便 。下面我们看看如何使用它来操作我们的数据库 。介绍一下常规的用法 。
2.1 实体类注解mybatis-plus为使用者封装了很多的注解 , 方便我们使用 , 我们首先看下实体类中有哪些注解 。有如下的实体类:
@TableName(value = https://www.isolves.com/it/cxkf/jiagou/2022-01-21/"user")public class UserDO {/*** 主键*/@TableId(value = "id", type = IdType.AUTO)private Long id;/*** 昵称*/@TableField("nickname")private String nickname;/*** 真实姓名*/private String realName;}复制代码