mybatis-plus代码生成器
1、引入依赖
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.5.1</version>
</dependency>
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.31</version>
</dependency>
2、快速生成
package com.qcby.aiCommunity.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;public class FastAutoGeneratorTest {public static void main(String[] args) {// 数据库连接配置,替换成你实际的数据库信息(这里用你示例里的格式,注意实际用要保证能连通)String url = "jdbc:mysql://127.0.0.1:3306/community?characterEncoding=utf-8&useSSL=false";String username = "root";String password = "root";FastAutoGenerator.create(url, username, password)// 全局配置.globalConfig(builder -> {builder.author("qcby") // 设置作者.fileOverride() // 覆盖已生成文件(如果之前有生成过,会替换).outputDir("D://aiCommunity"); // 生成文件输出的目录,可根据实际调整})// 包配置,和你项目的模块包结构对应.packageConfig(builder -> {builder.parent("com.qcby.aiCommunity") // 父包名,对应你项目的根包.moduleName("aiCommunity") // 模块名,和你项目结构里的模块对应.controller("controller") // 控制层包名(可自定义,也可按默认).entity("domain") // 实体类包名,对应你项目里的 domain.mapper("mapper") // Mapper 接口包名.service("service") // Service 接口包名.serviceImpl("service.impl") // Service 实现类包名// 设置 Mapper XML 文件生成路径,放到 resources/mapper 下更规范(也可按你需求改).pathInfo(Collections.singletonMap(OutputFile.mapperXml, "src/main/resources/mapper"));})// 策略配置,设置要生成的表、过滤前缀等.strategyConfig(builder -> {// 这里写你实际要生成的表名,示例把数据库里的表都列上了,可按需增减builder.addInclude("camera", "community", "in_out_record","log", "manual_record", "menu", "person", "role", "role_menu", "user", "user_role").addTablePrefix("t_", "c_"); // 过滤表前缀,比如 t_user 生成 User 实体,可按实际需求调整})// 使用 Freemarker 模板引擎(默认是 Velocity,也可换成其他).templateEngine(new FreemarkerTemplateEngine()).execute();} }