mybatis插件自动生成xml文件
在项目test文件下新建EntityGenerator
public class EntityGenerator {
@Test
public void entityGenerator() {
AutoGenerator mpg = new AutoGenerator();
GlobalConfig gc = new GlobalConfig();
gc.setOutputDir("/Users/le/Documents/javaporject/favorite/src/main/java");
gc.setFileOverride(true);
gc.setActiveRecord(true);
gc.setEnableCache(false);
gc.setBaseResultMap(true);
gc.setBaseColumnList(false);
gc.setAuthor("zl");
mpg.setGlobalConfig(gc);
DataSourceConfig dsc = new DataSourceConfig();
dsc.setDbType(DbType.MYSQL);
dsc.setTypeConvert(new MySqlTypeConvert() {
@Override
public DbColumnType processTypeConvert(String fieldType) {
return super.processTypeConvert(fieldType);
}
});
dsc.setDriverName("com.mysql.jdbc.Driver");
dsc.setUsername("root");
dsc.setPassword("root");
dsc.setUrl("jdbc:mysql://127.0.0.1:3306/favorite?autoReconnect=true&useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=UTC");
mpg.setDataSource(dsc);
StrategyConfig strategy = new StrategyConfig();
strategy.setNaming(NamingStrategy.underline_to_camel);
strategy.setInclude(new String[]{"collect", "collector_view", "config",
"favorites", "feedback", "follow", "letter","look_record","notice","praise",
"url_library","user","user_is_follow"});
mpg.setStrategy(strategy);
PackageConfig pc = new PackageConfig();
pc.setParent(null);
pc.setEntity("com.zl.favorite.model");
pc.setMapper("com.zl.favorite.dao");
pc.setXml("mapper");
pc.setService("TTT");
pc.setServiceImpl("TTT");
pc.setController("TTT");
mpg.setPackageInfo(pc);
InjectionConfig cfg = new InjectionConfig() {
@Override
public void initMap() {
Map<String, Object> map = new HashMap<>();
map.put("abc", this.getConfig().getGlobalConfig().getAuthor() + "-mp");
this.setMap(map);
}
};
mpg.setCfg(cfg);
mpg.execute();
System.err.println(mpg.getCfg().getMap().get("abc"));
}
}
