依赖
<!--mysql驱动-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.21</version>
</dependency>
<!--mybatisPlus-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.3</version>
</dependency>
<!--swaggerUi-->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-boot-starter</artifactId>
<version>3.0.0</version>
</dependency>
<!--mybatisPlus代码生成器依赖-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.4.1</version>
</dependency>
<!--模板引擎 mybatisPlus默认Veloctity-->
<dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity-engine-core</artifactId>
<version>2.3</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
代码
// 代码生成器
AutoGenerator autoGenerator = new AutoGenerator();
//全局配置
GlobalConfig config = new GlobalConfig();
//获取项目绝对路径
String projectPath = System.getProperty("user.dir");
// 代码输出的目录
config.setOutputDir(projectPath + "/src/main/java");
// 是否覆盖已有文件,默认为false
config.setFileOverride(false);
// 是否打开输出目录,默认为true
config.setOpen(false);
// 开发人员
config.setAuthor("gao");
//开启swagger,默认值为false
config.setSwagger2(true);
// 全局主键类型
config.setIdType(IdType.ASSIGN_ID);
// service的命名格式
config.setServiceName("%sService");
// service实现类的命名格式
config.setServiceImplName("%sServiceImpl");
// Controller的命名格式
config.setControllerName("%sController");
// Mapper的命名格式
config.setMapperName("%sDao");
// entity的命名格式
config.setEntityName("%sEntity");
autoGenerator.setGlobalConfig(config);
// 包名配置
PackageConfig packageConfig = new PackageConfig();
packageConfig.setParent("com.gao");
autoGenerator.setPackageInfo(packageConfig);
// 数据源配置
DataSourceConfig dataSourceConfig = new DataSourceConfig();
dataSourceConfig.setUsername("root");
dataSourceConfig.setPassword("root");
dataSourceConfig.setDriverName("com.mysql.cj.jdbc.Driver");
dataSourceConfig.setUrl("jdbc:mysql://127.0.0.1:3306/hana?useUnicode=true&useSSL=false&characterEncoding=utf8&serverTimezone=Asia/Shanghai");
autoGenerator.setDataSource(dataSourceConfig);
// 数据库表配置
StrategyConfig strategyConfig = new StrategyConfig();
// 表名
strategyConfig.setInclude("blog_content", "blog_user");
// 乐观锁属性名称
strategyConfig.setVersionFieldName("version");
// 生成实体,生成字段注释
strategyConfig.setEntityTableFieldAnnotationEnable(true);
// 逻辑删除属性名称
strategyConfig.setLogicDeleteFieldName("deleted");
// 自动填充字段
TableFill createTime = new TableFill("create_time", FieldFill.INSERT); // 插入时填充
TableFill updateTime = new TableFill("update_time", FieldFill.INSERT_UPDATE); // 插入、更新时都填充
List<TableFill> list = new ArrayList<>();
list.add(createTime);
list.add(updateTime);
strategyConfig.setTableFillList(list);
// 开启驼峰连接字符
strategyConfig.setControllerMappingHyphenStyle(true);
// 数据库表映射到实体的命名策略 underline_to_camel 下划线切换成驼峰 no_change 不切换(默认)
strategyConfig.setNaming(NamingStrategy.underline_to_camel);
// 数据库表字段映射到实体的命名策略, 未指定按照 naming 执行 underline_to_camel
strategyConfig.setColumnNaming(NamingStrategy.underline_to_camel);
autoGenerator.setStrategy(strategyConfig);
// 开始创建
autoGenerator.execute();
版权声明:本文为NotfoundExcption原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。