MyBatisPlus|MyBatis-Plus工具


文章目录

  • 一. 代码生成器
    • 1. 引入依赖
    • 2. 快速生成
  • 二. 多数据源
    • 1. 创建数据库及表
    • 2. 引入依赖
    • 3. 配置多数据源
    • 4. 创建用户service
    • 5. 创建商品service
    • 6. 测试
  • 三. MyBatisX插件

一. 代码生成器 1. 引入依赖 MyBatisPlus|MyBatis-Plus工具
文章图片

2. 快速生成
package com.atguigu.mybatisplus; import com.baomidou.mybatisplus.generator.FastAutoGenerator; import com.baomidou.mybatisplus.generator.config.OutputFile; import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine; import java.util.Collections; /** * Date:2022/2/15 * Author:ybc * Description: */ public class FastAutoGeneratorTest {public static void main(String[] args) { FastAutoGenerator.create("jdbc:mysql://127.0.0.1:3306/mybatis_plus?characterEncoding=utf-8&userSSL=false", "root", "root") .globalConfig(builder -> { builder.author("pudding") // 设置作者 //.enableSwagger() // 开启 swagger 模式 .fileOverride() // 覆盖已生成文件 .outputDir("E://mybatis_plus"); // 指定输出目录 }) .packageConfig(builder -> { builder.parent("com.pudding") // 设置父包名 .moduleName("mybatisplus") // 设置父包模块名 .pathInfo(Collections.singletonMap(OutputFile.mapperXml, "E://mybatis_plus")); // 设置mapperXml生成路径 }) .strategyConfig(builder -> { builder.addInclude("t_user") // 设置需要生成的表名 .addTablePrefix("t_", "c_"); // 设置过滤表前缀 }) .templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板 .execute(); } }

二. 多数据源 MyBatisPlus|MyBatis-Plus工具
文章图片

MyBatisPlus|MyBatis-Plus工具
文章图片

1. 创建数据库及表 创建数据库mybatis_plus_1和表product
CREATE DATABASE `mybatis_plus_1` /*!40100 DEFAULT CHARACTER SET utf8mb4 */; use `mybatis_plus_1`; CREATE TABLE product ( id BIGINT(20) NOT NULL COMMENT '主键ID', name VARCHAR(30) NULL DEFAULT NULL COMMENT '商品名称', price INT(11) DEFAULT 0 COMMENT '价格', version INT(11) DEFAULT 0 COMMENT '乐观锁版本号', PRIMARY KEY (id) ); INSERT INTO product (id, NAME, price) VALUES (1, '外星人笔记本', 100); use mybatis_plus; DROP TABLE IF EXISTS product;

2. 引入依赖 【MyBatisPlus|MyBatis-Plus工具】MyBatisPlus|MyBatis-Plus工具
文章图片

3. 配置多数据源
说明:注释掉之前的数据库连接,添加新配置
MyBatisPlus|MyBatis-Plus工具
文章图片

spring: # 配置数据源信息 datasource: dynamic: # 设置默认的数据源或者数据源组,默认值即为master primary: master # 严格匹配数据源,默认false.true未匹配到指定数据源时抛异常,false使用默认数据源 strict: false datasource: master: url: jdbc:mysql://localhost:3306/mybatis_plus?characterEncoding=utf-8&useSSL=false driver-class-name: com.mysql.cj.jdbc.Driver username: root password: root slave_1: url: jdbc:mysql://localhost:3306/mybatis_plus_1?characterEncoding=utf-8&useSSL=false driver-class-name: com.mysql.cj.jdbc.Driver username: root password: root

4. 创建用户service MyBatisPlus|MyBatis-Plus工具
文章图片

5. 创建商品service MyBatisPlus|MyBatis-Plus工具
文章图片

6. 测试 MyBatisPlus|MyBatis-Plus工具
文章图片

package com.atguigu.mybatisplus; import com.atguigu.mybatisplus.service.ProductService; import com.atguigu.mybatisplus.service.UserService; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; @SpringBootTest class MybatisPlusDatasourceApplicationTests { @Test void contextLoads() { } @Autowired private UserService userService; @Autowired private ProductService productService; @Test public void test(){ System.out.println(userService.getById(1)); System.out.println(productService.getById(1)); } }

MyBatisPlus|MyBatis-Plus工具
文章图片

三. MyBatisX插件 MyBatisPlus|MyBatis-Plus工具
文章图片

MyBatisX插件用法:https://baomidou.com/pages/ba5b24/
MyBatisPlus|MyBatis-Plus工具
文章图片

MyBatisPlus|MyBatis-Plus工具
文章图片

    推荐阅读