mybatisPlus通过数据库自动生成代码工具类

1、引入xml配置文件

<!--引入mybatis plus依赖-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.5.2</version>
        </dependency>
<!--引入mybatis plus生成代码工具generator依赖-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-generator</artifactId>
            <version>3.5.1</version>
        </dependency>

<!--freemarker模板-->
        <dependency>
            <groupId>org.freemarker</groupId>
            <artifactId>freemarker</artifactId>
            <version>2.3.31</version>
        </dependency>
     <dependency>
      <groupId>mysql</groupId>
     <artifactId>mysql-connector-java</artifactId>
     <scope>runtime</scope>
     </dependency>
     <dependency>
     <groupId>com.alibaba</groupId>
      <artifactId>druid-spring-boot-starter</artifactId>
<!--该位置自己选择合适的版本填写-->
         <version>${druid.version}</version>
     </dependency>

2、yml中配置数据库连接

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/springboot_vue?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=UTC
    username: root
    password: root
    driver-class-name: com.mysql.jdbc.Driver

3、写mybatis-plus配置类

配置类详细解释都用注释标明,请各位详细解读

package com.zhouzhou.utils;

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

import java.util.Collections;

/**
 * mybatis-plus生成mapper,service,controller,entity;工具类
 */
public class MybatisPlusTest {

    public static void main(String[] args) {
        /**                   数据连接  记得改成你的数据库,用户名和密码                */
        FastAutoGenerator.create("jdbc:mysql://localhost:3306/springboot_vue?serverTimezone=GMT%2B8", "root", "root")
                .globalConfig(builder -> {
                    builder.author("码农小周") // 设置作者
                            //.enableSwagger() // 开启 swagger 模式
                            .fileOverride() // 释放执行就会覆盖已生成文件
                            //鼠标右击蓝色java目录,选择Copy Path... 选择 Absolute Path 即可复制路径,粘贴到下面即可
                            .outputDir("D:\\mybatisUtils\\springboot-demo01-copy"); // 指定输出目录
                })
                .packageConfig(builder -> {
                    builder.parent("com.zhouzhou") // 设置父包名
//                            .moduleName("") // 设置父包模块名  需要你就设置
                            .pathInfo(Collections.singletonMap(OutputFile.mapperXml, "D:\\mybatisUtils\\springboot-demo01-copy\\com\\zhouzhou\\mapper")); // 设置mapperXml生成路径
                })
                .strategyConfig(builder -> {
//
                    builder.addInclude("category"); // 设置需要生成的表名
                    builder.addTablePrefix("t_");  // 设置过滤表前缀  看你的表是否存在前缀
                })
                .templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板
                .execute();
    }

}

注:在读大学生一枚,该博客用于记录所学知识,如有不对的地方,请及时指教,谢谢各位。

 

posted @ 2023-03-12 15:49  码农小周  阅读(8)  评论(0)    收藏  举报