mybatisplus代码生成器不生成文件和报错
package com.beibei;
import com.baomidou.mybatisplus.annotation.DbType;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.generator.AutoGenerator;
import com.baomidou.mybatisplus.generator.config.*;
import com.baomidou.mybatisplus.generator.config.converts.OracleTypeConvert;
import com.baomidou.mybatisplus.generator.config.po.TableFill;
import com.baomidou.mybatisplus.generator.config.rules.DateType;
import com.baomidou.mybatisplus.generator.config.rules.DbColumnType;
import com.baomidou.mybatisplus.generator.config.rules.IColumnType;
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
import java.util.ArrayList;
/**
* @ClassName BeibeiCode
* @Description
* @Author
* @Date 2021/5/31 15:15
**/
public class BeibeiCode {
public static void main(String[] args) {
//构建一个代码生成器对象
AutoGenerator mpg= new AutoGenerator();
//配置策略
//1.全局配置
GlobalConfig gc = new GlobalConfig();
//获取当前用户项目目录
String projiectPath = System.getProperty("");
System.out.println("projiectPath:=="+projiectPath);
//输出目录
// (projiectPath+"/src/main/java");
gc.setOutputDir(projiectPath+"/target/generator-code");
//设置作者
gc.setAuthor("beibeiya");
//实体属性 Swagger2 注解
gc.setSwagger2(true);
//生成之后是否打开文件夹
gc.setOpen(false);
//是否覆盖
gc.setFileOverride(true);
//去Service的I前缀
gc.setServiceName("%sService");
gc.setServiceImplName("%sServiceImpl");
//设置idType的生成类型
gc.setIdType(IdType.ID_WORKER);
gc.setDateType(DateType.ONLY_DATE);
mpg.setGlobalConfig(gc);
//2.设置数据源
DataSourceConfig dsc = new DataSourceConfig();
dsc.setDbType(DbType.ORACLE);
dsc.setTypeConvert(new ITypeConvert() {
@Override
public IColumnType processTypeConvert(GlobalConfig globalConfig, String fieldType) {
String t = fieldType.toLowerCase();
if (t.contains("number")) {
return DbColumnType.INTEGER;
}
return new OracleTypeConvert().processTypeConvert(globalConfig,fieldType);
}
});
dsc.setDriverName("");
dsc.setUsername("****");//数据库账号
dsc.setPassword("****");//数据库密码
dsc.setUrl("jdbc:oracle:thin:@ip:port/**");
mpg.setDataSource(dsc);
//3.包的配置
PackageConfig pc = new PackageConfig();
//模块名字
pc.setModuleName("testGeneratoe");
pc.setParent("");
pc.setEntity("entity");
pc.setMapper("mapper");
pc.setService("service");
pc.setController("controller");
mpg.setPackageInfo(pc);
//4.策略配置
StrategyConfig strategy = new StrategyConfig();
//设置需要自动生产的表名,可包含多张表
//ps表名要大写否则生成的只有文件夹没有文件
String[] tables = new String[]{
"CLMS_CONTRACT",
"USER_TEST"};
strategy.setInclude(tables);
//下划线转驼峰
strategy.setNaming(NamingStrategy.underline_to_camel);
strategy.setColumnNaming(NamingStrategy.underline_to_camel);
//是否支持lombok
strategy.setEntityLombokModel(true);
//rest风格
strategy.setRestControllerStyle(true);
//下划线命名 user_id_2
strategy.setControllerMappingHyphenStyle(true);
//逻辑删除配置
strategy.setLogicDeleteFieldName("deleted");
//自动填充配置 GMT_MODIFIED
//创建时间更新时间填充
TableFill gmt_creat = new TableFill("GMT_CREAT", FieldFill.INSERT);
TableFill gmt_modified = new TableFill("GMT_MODIFIED", FieldFill.UPDATE);
ArrayList<TableFill> tableFills = new ArrayList<>();
tableFills.add(gmt_creat);
tableFills.add(gmt_modified);
strategy.setTableFillList(tableFills);
//乐观锁
strategy.setVersionFieldName("version");
mpg.setStrategy(strategy);
mpg.execute();//执行自动生成
}
}