MyBatisPlus3.4.3版自動生成代碼的使用過程
AutoGenerator 是 MyBatis-Plus 的代碼生成器,通過 AutoGenerator 可以快速生成 Entity、Mapper、Mapper XML、Service、Controller 等各個模塊的代碼,極大的提升了開發(fā)效率。
1 準備工作
創(chuàng)建springboot工程,這里省略。
2 導(dǎo)入依賴
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <!-- mybatisplus依賴,注意不用引入mybatis依賴--> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.4.3.4</version> </dependency> <!-- mysql依賴可換成對應(yīng)版本 --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.26</version> </dependency> <!-- mybatis-plus代碼生成器依賴--> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-generator</artifactId> <version>3.5.1</version> </dependency> <!-- 自動生成代碼的模板引擎,mybatis-plus默認的--> <dependency> <groupId>org.apache.velocity</groupId> <artifactId>velocity-engine-core</artifactId> <version>2.3</version> </dependency> <!-- 由于生成的controller會用到web的注解--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency>
3 創(chuàng)建CodeGeneratorTest類
需要對
- 數(shù)據(jù)源配置,(自己數(shù)據(jù)庫對應(yīng)的url,username,password等)
- 全局配置, (作者信息,輸出目錄等)
- 包配置, (Entity、Mapper、Mapper XML、Service、Controller 等各個模塊的包命名等)
- 策略配置, (配置生成那些表,怎么生成等)
- 模板配置
- 注入配置
注意以下路徑需要修改為實制項目路徑,要生成的數(shù)據(jù)庫表名需要修改為實制的,數(shù)據(jù)庫源url修改為對應(yīng)的數(shù)據(jù)源
import com.baomidou.mybatisplus.generator.FastAutoGenerator; import com.baomidou.mybatisplus.generator.config.DataSourceConfig; import com.baomidou.mybatisplus.generator.config.OutputFile; import com.baomidou.mybatisplus.generator.config.converts.MySqlTypeConvert; import com.baomidou.mybatisplus.generator.config.querys.MySqlQuery; import com.baomidou.mybatisplus.generator.keywords.MySqlKeyWordsHandler; import org.junit.Test; import java.util.Collections; /** * @author: wuKeFan * @date: 2022/2/24 10:39 * @version 1.0 */ public class CodeGeneratorTest { @Test public void run() { FastAutoGenerator.create( //數(shù)據(jù)源配置,url需要修改 new DataSourceConfig.Builder("url","username","password") .dbQuery(new MySqlQuery()) .schema("schema") .typeConvert(new MySqlTypeConvert()) .keyWordsHandler(new MySqlKeyWordsHandler()) ) //全局配置 .globalConfig(builder -> { builder.author("wuKeFan") // 設(shè)置作者 //.disableOpenDir()//禁止打開輸出目錄 //.enableSwagger() // 開啟 swagger 模式 .fileOverride() // 覆蓋已生成文件 .outputDir(System.getProperty("user.dir")+"/src/main/java"); // 指定輸出目錄 }) //包配置 .packageConfig(builder -> { builder.parent("com.wkf.workrecord.tools.autocode") // 設(shè)置父包名,根據(jù)實制項目路徑修改 .moduleName("web") // 父包名路徑下再新建的文件夾 .entity("entity") // 后面這些是sys文件夾里新建的各分類文件夾 .service("service") .serviceImpl("service.impl") .mapper("mapper") .xml("mapper.xml") .controller("controller") //.other("other") .pathInfo(Collections.singletonMap(OutputFile.mapperXml, System.getProperty("user.dir")+"/src/main/java/com/wkf/workrecord/tools/autocode/web/mapper/xml")); // 存放mapper.xml路徑 }) //策略配置 .strategyConfig(builder -> { builder.addInclude("jm_fxy_apply_staging_plan_code") // 設(shè)置需要生成的表名 .addTablePrefix("jm_") // 設(shè)置過濾表前綴 .entityBuilder() //實體類配置 .enableLombok() //使用lombok .enableTableFieldAnnotation()//實體類字段注解 .controllerBuilder()//controller配置 .enableRestStyle()//開啟restcontroller .mapperBuilder() .enableMapperAnnotation()//開啟mapper注解 .enableBaseResultMap()//啟用 BaseResultMap 生成 .enableBaseColumnList();//啟用 BaseColumnList }) //.templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默認的是Velocity引擎模板 .execute(); } }
4 運行代碼生成器
點擊運行上面的main方法就能自動生成了
生成的效果圖:
這樣代碼生成器就寫好了,如果需要其他格式模板可以自行參考下面的配置,自行修改
5 數(shù)據(jù)庫配置(DataSourceConfig)
5.1 基礎(chǔ)配置
5.2 可選配置
5.3 全局配置(GlobalConfig)
5.4 包配置(PackageConfig)
5.5 模板配置(TemplateConfig)
5.6 注入配置(InjectionConfig)
5.7 策略配置(StrategyConfig)
5.8 Entity 策略配置
5.9 Controller 策略配置
5.10 Service 策略配置
5.11 Mapper 策略配置
到此這篇關(guān)于MyBatisPlus3.4.3版自動生成代碼的使用的文章就介紹到這了,更多相關(guān)MyBatisPlus自動生成代碼內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
java 發(fā)送帶Basic Auth認證的http post請求實例代碼
下面小編就為大家?guī)硪黄猨ava 發(fā)送帶Basic Auth認證的http post請求實例代碼。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-11-11springboot+mybatis-plus+oracle實現(xiàn)邏輯刪除
最近在做一個前后端分離的小項目,需要刪除用戶表的用戶,本文主要實現(xiàn)了springboot+mybatis-plus+oracle邏輯刪除,具有一定的參考價值,感興趣的可以了解一下2021-08-08java中實現(xiàn)兼容ie6 7 8 9的spring4+websocket
這篇文章主要介紹了java中實現(xiàn)兼容ie6 7 8 9的spring4+websocket程序代碼,十分的簡單實用,有需要的小伙伴可以參考下。2015-06-06JAVA使用Gson解析json數(shù)據(jù)實例解析
JSON(JavaScript Object Notation) 是一種輕量級的數(shù)據(jù)交換格式,易于閱讀和編寫,同時也易于機器解析和生成。接下來通過本文給大家介紹JAVA使用Gson解析json數(shù)據(jù)實例解析,需要的朋友參考下吧2016-03-03