基于Springboot的MyBatis-Plus代码生成器入门

1. 版本

本文仅适用于MyBatis-Plus 3.5.1及其以上版本

2. 创建简单的Spring-boot项目

2.1 引入依赖



    com.baomidou
    mybatis-plus-boot-starter
    3.5.1



    com.baomidou
    mybatis-plus-generator
    3.5.1

ps:两个版本要保持一致


    org.freemarker
    freemarker


    hu.blackbelt.bundles.swagger-parser
    io.swagger.parser
    1.0.47_1

基于Springboot的MyBatis-Plus代码生成器入门_第1张图片

2.2 配置application

#数据源
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/test?serverTimezone=Asia/Shanghai
spring.datasource.password=12345
spring.datasource.username=root
#日志
mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
#配置指定实体类文件路径,在使用的时候,会扫描这个文件下的内容
mybatis-plus.type-aliases-package=com.aaa.mpEasycode.entity
#该配置就是将带有下划线的表字段映射为驼峰格式的实体类属性
#如数据库字段为user_name,转换为驼峰标志,再去匹配类中的属性userName
mybatis-plus.configuration.map-underscore-to-camel-case=true

基于Springboot的MyBatis-Plus代码生成器入门_第2张图片

 3. 写生成类并运行

package com.aaa.mpeasycode;

import com.baomidou.mybatisplus.generator.FastAutoGenerator;
import com.baomidou.mybatisplus.generator.config.OutputFile;
import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;

import java.util.Collections;

/**
 * @author :Wqw
 * @date :Created in 2022/11/6 21:45
 * @description:
 * @modified By:
 * @version:
 */
public class MpEasyCode {
    public static void main(String[] args) {
        //设置数据库
        FastAutoGenerator.create("jdbc:mysql://localhost:3306/test?serverTimezone=Asia/Shanghai", "root", "12345")
                //全局配置
                .globalConfig(builder -> {
                    String path="D:\\Intell-idea\\springboot02\\mp-easycode\\src\\main\\java\\";
                    builder.author("wqw") // 设置作者
                            .enableSwagger() // 开启 swagger 模式
                            .fileOverride() // 覆盖已生成文件
                            .outputDir(path); // 指定输出目录
                })
                //包配置
                .packageConfig(builder -> {
                    String path="D:\\Intell-idea\\springboot02\\mp-easycode\\src\\main\\resources\\mapper\\";
                    builder.parent("com.aaa") // 设置父包名
                            .moduleName("mpeasycode") // 设置父包模块名
                            .pathInfo(Collections.singletonMap(OutputFile.mapperXml, path)); // 设置mapperXml生成路径
                })
                //策略配置
                .strategyConfig(builder -> {
                    builder.addInclude("tbl_user") // 设置需要生成的表名
                            .addTablePrefix("t_", "c_", "tbl_") // 设置过滤表前缀
                            //实体类配置
                            .entityBuilder()
                            //开启lombok
                            .enableLombok()
                            //Controller配置
                            .controllerBuilder()
                            //开启生成@RestController 控制器
                            .enableRestStyle()
                            //service配置
                            .serviceBuilder()
                            .formatServiceFileName("%sService")
                            .formatServiceImplFileName("%sServiceImp")
                            //mapper配置
                            .mapperBuilder()
                            .enableMapperAnnotation()
                            .formatMapperFileName("%sDao")
                            .formatXmlFileName("%sXml");
                })
                .templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板
                .execute();
    }
}

基于Springboot的MyBatis-Plus代码生成器入门_第3张图片

4.运行结果

基于Springboot的MyBatis-Plus代码生成器入门_第4张图片 基于Springboot的MyBatis-Plus代码生成器入门_第5张图片

5. 使用

直接在controller层自动注入serivce实现类,然后使用实现类直接调用自带的方法。

你可能感兴趣的:(mybatis,java,spring,boot)