MyBatisPlus 自动生成
根据数据表自动生成实体类、Mapper、Service、
ServiceImpl、Controller
1、pom.xml 导⼊ MyBatis Plus Generator
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plusgenerator</artifactId>
<version>3.3.1.tmp</version>
</dependency> <dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity</artifactId>
<version>1.7</version>
</dependency>
Velocity(默认)、Freemarker、Beetl
2、启动类
package com.southwind.mybatisplus;
import
com.baomidou.mybatisplus.annotation.DbType;
import
com.baomidou.mybatisplus.generator.AutoGene
rator;
import
com.baomidou.mybatisplus.generator.config.D
ataSourceConfig;
import
com.baomidou.mybatisplus.generator.config.G
lobalConfig;
import
com.baomidou.mybatisplus.generator.config.P
ackageConfig;
import
com.baomidou.mybatisplus.generator.config.S
trategyConfig;
import
com.baomidou.mybatisplus.generator.config.r
ules.NamingStrategy;
public class Main {
public static void main(String[] args) {
//创建generator对象
AutoGenerator autoGenerator = new
AutoGenerator();
//数据源
DataSourceConfig dataSourceConfig =
new DataSourceConfig();
dataSourceConfig.setDbType(DbType.MYSQL);
dataSourceConfig.setUrl("jdbc:mysql://ip:3
306/db?
useUnicode=true&characterEncoding=UTF-8");
dataSourceConfig.setUsername("root");
dataSourceConfig.setPassword("root");
dataSourceConfig.setDriverName("com.mysql.
cj.jdbc.Driver");
autoGenerator.setDataSource(dataSourceConf
ig);
//全局配置
GlobalConfig globalConfig = new
GlobalConfig();
globalConfig.setOutputDir(System.getProper
ty("user.dir")+"/src/main/java");
globalConfig.setOpen(false);
globalConfig.setAuthor("southwind");
globalConfig.setServiceName("%sService");
autoGenerator.setGlobalConfig(globalConfig
);
//包信息
PackageConfig packageConfig = new
PackageConfig();
packageConfig.setParent("com.southwind.myb
atisplus");
packageConfig.setModuleName("generator");
packageConfig.setController("controller");
packageConfig.setService("service");
packageConfig.setServiceImpl("service.impl
");
packageConfig.setMapper("mapper");
packageConfig.setEntity("entity");
autoGenerator.setPackageInfo(packageConfig
);
//配置策略
StrategyConfig strategyConfig = new
StrategyConfig();
strategyConfig.setEntityLombokModel(true);
strategyConfig.setNaming(NamingStrategy.un
derline_to_camel);
strategyConfig.setColumnNaming(NamingStrat
egy.underline_to_camel);
autoGenerator.setStrategy(strategyConfig);
autoGenerator.execute();
}
}