它提供互動式的Web UI用於生成相容mybatis-plus框架的相關功能程式碼,包括Entity,Mapper,Mapper.xml,Service,Controller等。
可以自定義模板以及各類輸出引數,也可通過SQL查詢語句直接生成程式碼。
git地址
:https://github.com/davidfantasy/mybatis-plus-generator-ui
<dependency>
<groupId>com.github.davidfantasy</groupId>
<artifactId>mybatis-plus-generator-ui</artifactId>
<version>2.0.1</version>
</dependency>
<!-- mysql -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>${mysql8.version}</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.1</version>
</dependency>
public class GeberatorUIServer {
public static void main(String[] args) {
GeneratorConfig config = GeneratorConfig.builder().jdbcUrl("jdbc:mysql://118.31.224.65:3306/kp?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Hongkong")
.userName("root")
.password("root")
.driverClassName("com.mysql.cj.jdbc.Driver")
//資料庫schema,MSSQL,PGSQL,ORACLE,DB2型別的資料庫需要指定
//.schemaName("myBusiness")
//如果需要修改entity及其屬性的命名規則,以及自定義各類生成檔案的命名規則,可自定義一個NameConverter範例,覆蓋相應的名稱轉換方法,詳細可檢視該介面的說明:
.nameConverter(new NameConverter() {
/**
* 自定義Service類檔案的名稱規則
*/
@Override
public String serviceNameConvert(String tableName) {
return this.entityNameConvert(tableName) + "Service";
}
/**
* 自定義Controller類檔案的名稱規則
*/
@Override
public String controllerNameConvert(String tableName) {
return this.entityNameConvert(tableName) + "Controller";
}
})
//所有生成的java檔案的父包名,後續也可單獨在介面上設定
.basePackage("com.jincou.mybatisplus")
.port(8068)
.build();
MybatisPlusToolsApplication.run(config);
}
}
存取
localhost:8068
它可以把資料庫所有的表都查詢出來,我們可以現選擇指定的表進行生成程式碼。
同是可以選擇生成哪些檔案,對Controller層,也可以選擇生成哪些介面。
我們可以看到,生成的檔案及目錄
再來看下Controller自動生成的介面
注意
: 因為不同的專案的介面的返回格式是不一樣的,這裡我們可以修改Controller模版,來生成當前我們專案所有返回介面格式。
不建議直接下載原始碼執行 ,該專案是設計為直接嵌入到對應的業務專案中使用,可以自動識別專案路徑等環境變數。
支援幾乎所有主流的資料庫,具體可參考mybatis-plus-generator框架的檔案。需要自行引入資料庫的driver包,並在 GeneratorConfig中指定driverClassName。
所有的使用者儲存的設定是按照basePackage分組儲存到user.home目錄的.mybatis-plus-generator-ui中的,不同專案的設定不會互相影響。
大部分的啟動問題都是由於依賴衝突導致的,因為mybatis-plus-generator-ui也依賴於springboot和mybatis-plus,請先檢查依賴包版本是否相差過大;
1.X的版本僅支援最高mp的3.4.X版本,在高版本的springboot(大於2.4)上啟動也會有問題,2.0.0版本已經解決了相關的相容性問題;
宣告: 公眾號如需轉載該篇文章,發表文章的頭部一定要 告知是轉至公眾號: 後端元宇宙。同時也可以問本人要markdown原稿和原圖片。其它情況一律禁止轉載!