public static void main(String[] args) { // 代码生成器 AutoGenerator mpg = new AutoGenerator(); // 全局配置 GlobalConfig gc = new GlobalConfig(); gc.setOutputDir("D:/IdeaWork/src/main/java"); gc.setAuthor("jobob"); gc.setOpen(false); // gc.setSwagger2(true); 实体属性 Swagger2 注解 //自定义文件命名 gc.setMapperName("%sMapper"); gc.setXmlName("%sMapper"); gc.setServiceName("%sService"); gc.setServiceImplName("%sServiceImpl"); gc.setControllerName("%sController"); mpg.setGlobalConfig(gc); // 数据源配置 DataSourceConfig dsc = new DataSourceConfig(); dsc.setUrl("jdbc:mysql://localhost:3306/zxscdxt?useUnicode=true&useSSL=false&characterEncoding=utf8&serverTimezone=GMT"); // dsc.setSchemaName("public"); dsc.setDriverName("com.mysql.jdbc.Driver"); dsc.setUsername("root"); dsc.setPassword("root"); mpg.setDataSource(dsc); //自定义数据库转化类型 MySqlTypeConvert mm = new MySqlTypeConvert(){ public DbColumnType processTypeConvert(GlobalConfig globalConfig, String fieldType) { if ( fieldType.toLowerCase().contains( "datetime" ) ) { return DbColumnType.DATE; } return (DbColumnType) super.processTypeConvert(globalConfig, fieldType); } }; dsc .setTypeConvert(mm); mpg.setPackageInfo(new PackageConfig() .setParent("com.yxkj.smartfactory") .setMapper("mapper") .setEntity("entity") .setService("service") .setServiceImpl("serviceImpl") .setController("controller") ); StrategyConfig strategyConfig = new StrategyConfig(); strategyConfig.setCapitalMode(true)//驼峰命名 .setNaming(NamingStrategy.underline_to_camel)//数据库表映射到实体的命名策略,该处下划线转驼峰命名 .setEntityLombokModel(false);//实体类中不使用_ mpg.setStrategy(strategyConfig); mpg.execute(); }
坑点:在使用mybatis-plus中在此处配置驼峰命名,在application.yml中不需要配置驼峰命名,否则会报错