MybatisPlus 給我們提供了更加強大的代碼生成器
# # 代碼生成器的簡單的對比

MybatisPlus 給我們提供的代碼生成器,不僅僅可以生成dao層,還可以生成 Service層,Controller層。
# # 代碼生成器的使用注意事項
# # 代碼生成器的使用注意事項
使用代碼生成器的步驟
- 我們自己提供一些配置檔案
- 模闆引擎
MP 的代碼生成器預設使用的是 Apache 的 Velocity 模闆,當然也可以更換為别的模闆技術,例如 freemarker。
<dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity-engine-core</artifactId>
<version>2.0</version>
</dependency>
- 加入 slf4j ,檢視日志輸出資訊
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.7</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.7</version>
</dependency>
- 生成示例代碼
@Test
public void testGenerator() {
//1. 全局配置
GlobalConfig config = new GlobalConfig();
//是否支援AR模式
config.setActiveRecord(true)
.setAuthor("weiyunhui") //作者
.setOutputDir("D:\\workspace_my\\mp03\\src\\main\\java") //生成路徑
.setFileOverride(true)//是否檔案覆寫,如果多次
.setServiceName("%sService") //設定生成的service接口名首字母是否為I
.setIdType(IdType.AUTO) //主鍵政策
.setServiceName("%sService")//設定生成的service接口的名字的首字母是否為I
.setBaseResultMap(true)
.setBaseColumnList(true);
//2. 資料源配置
DataSourceConfig dsConfig = new DataSourceConfig();
dsConfig.setDbType(DbType.MYSQL)
.setUrl("jdbc:mysql://localhost:3306/javaEE_0228")
.setDriverName("com.mysql.jdbc.Driver")
.setUsername("root")
.setPassword("1234");
//3.政策配置
StrategyConfig stConfig = new StrategyConfig();
stConfig.setCapitalMode(true) // 全局大寫命名
.setDbColumnUnderline(true) //表名 字段名 是否使用下滑線命名
.setNaming(NamingStrategy.underline_to_camel) // 資料庫表映射到實體的命名政策
.setInclude("tbl_employee") //生成的表
.setTablePrefix("tbl_"); // 表字首
//4.包名政策
PackageConfig pkConfig = new PackageConfig();
pkConfig.setParent("com.atguigu.mp")//父包名
.setController("controller")
.setEntity("beans")
.setService("service")
.setMapper("mapper")
.setXml("mapper");
//5.整合配置
AutoGenerator ag = new AutoGenerator().setGlobalConfig(config)
.setDataSource(dsConfig)
.setStrategy(stConfig)
.setPackageInfo(pkConfig);
ag.execute();
}