SpringBoot整合MybatisPlusGernerator實現(xiàn)逆向工程
在我們寫項目的時候,我們時常會因為需要創(chuàng)建很多的項目結(jié)構(gòu)而頭疼。項目中的表很多的時候,我們連實體類都創(chuàng)建不完,這時候就需要我們的逆向工程來幫助我們生成我們的框架結(jié)構(gòu)。這些結(jié)構(gòu)都差不多,實體類,表現(xiàn)層,業(yè)務(wù)層和持久層。
大家可以使用自己的數(shù)據(jù)庫,這篇文章主要是提供一下逆向工程的代碼。
一、引入依賴
<dependency>
<groupId>com.mysql</groupId>
<artifactId>mysql-connector-j</artifactId>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.3.2</version>
</dependency>
<dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity</artifactId>
<version>1.7</version>
</dependency>二、代碼
生成的代碼作為我們的工具類即可。
public static void main(String[] args) {
AutoGenerator autoGenerator = new AutoGenerator();
//設(shè)置我們的數(shù)據(jù)源,根據(jù)自己的實際情況填寫
DataSourceConfig dataSourceConfig = new DataSourceConfig();
dataSourceConfig.setDbType(DbType.MYSQL);
dataSourceConfig.setDriverName("com.mysql.cj.jdbc.Driver");
dataSourceConfig.setUsername("root");
dataSourceConfig.setPassword("2020");
dataSourceConfig.setUrl("jdbc:mysql://localhost:3306/community?useUnicode=true&characterEncoding=UTF-8");
autoGenerator.setDataSource(dataSourceConfig);
// 全局配置
GlobalConfig globalConfig = new GlobalConfig();
globalConfig.setOpen(false);
//文件生成到我們的java目錄下
globalConfig.setOutputDir(System.getProperty("user.dir")+"/src/main/java");
//文檔注釋的作者
globalConfig.setAuthor("admin");
globalConfig.setServiceName("%sService");
autoGenerator.setGlobalConfig(globalConfig);
//設(shè)置我們生成的包
PackageConfig packageConfig = new PackageConfig();
//父包
packageConfig.setParent("com.ha");
//實體類
packageConfig.setEntity("entity");
//mapper
packageConfig.setMapper("mapper");
//controller
packageConfig.setController("controller");
//service接口
packageConfig.setService("service");
//service接口實現(xiàn)類
packageConfig.setServiceImpl("service.impl");
autoGenerator.setPackageInfo(packageConfig);
//這里對我們生成的實體類的屬性做處理
StrategyConfig strategyConfig = new StrategyConfig();
strategyConfig.setEntityLombokModel(true);
strategyConfig.setNaming(NamingStrategy.underline_to_camel);
strategyConfig.setColumnNaming(NamingStrategy.underline_to_camel);
// 在這里修改你的表名稱 生成哪個表,寫哪個表的名字
strategyConfig.setInclude("manual_record");
//因為我數(shù)據(jù)庫的字段有時間類型的字段
/*TableFill tableFill1 = new TableFill("in_time", FieldFill.INSERT);
TableFill tableFill2 = new TableFill("out_time", FieldFill.INSERT);
TableFill tableFill3 = new TableFill("sign_time", FieldFill.INSERT);
List<TableFill> list = Arrays.asList(tableFill1,tableFill2,tableFill3);*/
strategyConfig.setTableFillList(list);
autoGenerator.setStrategy(strategyConfig);
autoGenerator.execute();
}生成策略大家可以自己探索一下。下邊的方法都是可以設(shè)置的策略。
public StrategyConfig setCapitalMode(final boolean isCapitalMode)
public StrategyConfig setNameConvert(final INameConvert nameConvert)
public StrategyConfig setNaming(final NamingStrategy naming)
public StrategyConfig setColumnNaming(final NamingStrategy columnNaming)
public StrategyConfig setSuperMapperClass(final String superMapperClass)
public StrategyConfig setEntitySerialVersionUID(final boolean entitySerialVersionUID)
public StrategyConfig setEntityColumnConstant(final boolean entityColumnConstant)
public StrategyConfig setChainModel(final boolean chainModel)
public StrategyConfig setEntityLombokModel(final boolean entityLombokModel)
三、測試

生成的實體類如下。這里代碼太長了截圖展示一部分。


到此這篇關(guān)于SpringBoot整合MybatisPlusGernerator實現(xiàn)逆向工程的文章就介紹到這了,更多相關(guān)SpringBoot 逆向工程內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Spring事件監(jiān)聽機(jī)制ApplicationEvent方式
這篇文章主要介紹了Spring事件監(jiān)聽機(jī)制ApplicationEvent方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-09-09
Java ApiPost請求返回406狀態(tài)碼問題的解決方案
APIPost是一款專為開發(fā)者和測試人員設(shè)計的API測試工具,類似于Postman,但提供了更多的團(tuán)隊協(xié)作和文檔管理功能,它可以幫助你更好地進(jìn)行接口調(diào)試和集成測試,但遇到了請求后返回的是406狀態(tài),所以本文給大家介紹了Java ApiPost請求返回406狀態(tài)碼問題的解決方案2025-04-04
Java的接口調(diào)用時的權(quán)限驗證功能的實現(xiàn)
這篇文章主要介紹了Java的接口調(diào)用時的權(quán)限驗證功能的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11
Java實現(xiàn)HTML轉(zhuǎn)PDF的兩款工具(itext-pdfhtml和x-easypdf)介紹與使用
這篇文章主要為大家詳細(xì)介紹了Java實現(xiàn)HTML轉(zhuǎn)PDF的兩款工具(itext-pdfhtml和x-easypdf)的介紹與使用,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解下2025-11-11
Java 超詳細(xì)講解數(shù)據(jù)結(jié)構(gòu)的應(yīng)用
數(shù)據(jù)結(jié)構(gòu)是計算機(jī)存儲、組織數(shù)據(jù)的方式。數(shù)據(jù)結(jié)構(gòu)是指相互之間存在一種或多種特定關(guān)系的數(shù)據(jù)元素的集合,讓我們一起來了解數(shù)據(jù)結(jié)構(gòu)是如何應(yīng)用的2022-04-04
jackson使用@JsonSerialize格式化BigDecimal解決.00不顯示問題
這篇文章主要介紹了jackson使用@JsonSerialize格式化BigDecimal解決.00不顯示問題,本文直接給出實現(xiàn)代碼,需要的朋友可以參考下2015-02-02

