import com.baomidou.mybatisplus.generator.AutoGenerator;
import com.baomidou.mybatisplus.generator.config.DataSourceConfig;
import com.baomidou.mybatisplus.generator.config.GlobalConfig;
import com.baomidou.mybatisplus.generator.config.PackageConfig;
import com.baomidou.mybatisplus.generator.config.StrategyConfig;
import com.baomidou.mybatisplus.generator.config.builder.Entity;
import com.baomidou.mybatisplus.generator.config.rules.DateType;
import org.junit.jupiter.api.Test;
/**
* MySQL 代码生成
*
* @author xu
* @since 3.5.3
*/
public class MySQLGeneratorTest {
/**
* 数据源配置
*/
private static final DataSourceConfig DATA_SOURCE_CONFIG = new DataSourceConfig
.Builder("jdbc:mysql://数据库地址:3306/cn_train_manage?serverTimezone=Asia/Shanghai", "用户名", "密码")
// .schema("表名")
.build();
@Test
public void testSimple() {
AutoGenerator generator = new AutoGenerator(DATA_SOURCE_CONFIG);
StrategyConfig strategyConfig = new StrategyConfig.Builder()
.addTablePrefix("过滤前缀")
.addTableSuffix("过滤后缀")
.build();
strategyConfig.entityBuilder().enableLombok();//开启lombok的@Data
generator.strategy(strategyConfig);
GlobalConfig globalConfig = new GlobalConfig.Builder()
.author("作者")
.outputDir("代码保存路径")
// .enableSwagger()//开启swagger
.enableSpringdoc()//swagger3.0
.dateType(DateType.TIME_PACK)//时间策略
.commentDate("yyyy-MM-dd")//时间格式化
.build();
generator.global(globalConfig);
PackageConfig packageConfig = new PackageConfig.Builder()
.parent("主包名")
.entity("bean包名")
.service("service包名")
.serviceImpl("service实现类包名")
.mapper("mapper包名")
.xml("xml包名")
.controller("controller包名")
.build();
generator.packageInfo(packageConfig);
generator.execute();
}
}
引入包:
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.5.5</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-spring-boot3-starter</artifactId>
<version>3.5.5</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
</dependency>
<dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity</artifactId>
<version>1.7</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
<dependency>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-ui</artifactId>
<version>1.7.0</version>
</dependency>