本文主要介绍mybatis-plus这款插件 , 针对springboot用户 。包括引入 , 配置 , 使用 , 以及扩展等常用的方面做一个汇总整理 , 尽量包含大家常用的场景内容 。
本文项目代码gitee地址: gitee.com/wei_rong_xi…关于mybatis-plus是什么 , 不多做介绍了 , 看官方文档:baomidou.com/ , 咱们直接代码撸起来 。
一、快速开始本文基于springboot、maven、jdk1.8、MySQL开发 , 所以开始前我们需要准备好这套环境 。我的环境使用了nacos作为注册中心 , 不了解或需要搭建的参考:nacos2.0搭建与配置
新建如下数据库:
文章插图
建议大家选择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 , 配合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;}复制代码
- @TableName 表名注解 , 用于标识实体类对应的表 。其说明如下 , 关于这些书写 , 常规情况基本很少用到 , 不做多余解释了:@Documented @Retention(RetentionPolicy.RUNTIME) @Target({ElementType.TYPE, ElementType.ANNOTATION_TYPE}) public @interface TableName {
推荐阅读
- 股票|花了一年投资美股 赚得还不如朋友买辆车多
- 还不知道买多大电视?直接翻出国家推荐标准,来看
- Spring boot 2.x 集成Mybatis-plus 实现多租户
- 10分钟学会用Python轻松玩转Excel
- 十分钟学会用 Go 编写命令行工具
- 不会吧,你还不会用RequestId看日志 ?
- Excel时间+文本表头,每天自动更新,你会用么?
- 科普|注意!这3种食用油最好别吃 很多人还不当回事
- 关于流量的三大误区,还不懂,就别玩互联网了
- 化妆|五六十岁女人化妆时,要尽量避开这几个误区,否则显老还不如素颜