MyBatisCodeHelperPro插件下載及使用教程詳解
參考:EasyCode
下載安裝
下載
MybatisCodeHelperNew-2.8.1-191-201.zip(親測(cè)Intellij2020.1絕對(duì)可用)
MyBatisCodeHelperPro插件下載地址:
注意:因某些限制,下載鏈接通過如下方式獲?。?/p>
需要的小伙伴,請(qǐng)關(guān)注微信公眾號(hào): Java技術(shù)迷, 或者掃描下方公眾號(hào)二維碼,回復(fù)關(guān)鍵字:091052, 即可免費(fèi)無(wú)套路獲取。

安裝
Intellij最新插件MybatisCodeHelper-2.8.1-191-201,使用方法IDEA頂部菜單:Tools -> MybatisCodeHelper -> Activation -> OfflineActivation,在offline key框輸入任意字符串,
Intellij2020.1版本可以使用,先安裝官方最新版本,然后做文件替換即可,替換路徑為:C:\Users\xxxx\AppData\Roaming\JetBrains\IntelliJIdea2020.1\plugins\MyBatisCodeHelper-Pro\lib

配置
數(shù)據(jù)庫(kù)用的tinyInt 或者 smallInt生成java類型是 byte 和 short 兩種類型。在java代碼里面操作 byte 和 short 類型比較麻煩,經(jīng)常需要強(qiáng)制轉(zhuǎn)換,下面是設(shè)置使用Integer 來(lái)替代byte和short還有使用Java8的日期時(shí)間類型

使用 Maven依賴
創(chuàng)建Maven項(xiàng)目,為保證生成的代碼不出丙錯(cuò)誤提示,導(dǎo)入依賴:
<dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.4</version> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.10</version> </dependency> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>5.1.11</version> </dependency> <!-- 保證生成的Service層的注解不錯(cuò) --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.2.1.RELEASE</version> </dependency>
根據(jù)實(shí)體類生成建表sql
按alt+insert


生成的SQL語(yǔ)句:

生成好了建表語(yǔ)句后,到數(shù)據(jù)庫(kù)中執(zhí)行, 然后從數(shù)據(jù)庫(kù)來(lái)生成crud代碼
根據(jù)表生成Bean、Dao+mapper和Service
第一步:在Intellij中連接上MySQL數(shù)據(jù)庫(kù),在指定的表上右鍵

第二步:配置生成信息

說明:
exampleQuery:會(huì)生成一大堆的example文件,xml中的example代碼看起來(lái)也很亂、建議使用方法名生成sql來(lái)替代。不推薦mapper接口做繼承,所以baseClass選項(xiàng)也不要選?,F(xiàn)在代碼都是自動(dòng)生成的,mapper做繼承僅能減少一些代碼量,效率提升不明顯。搞了繼承后,看mapper接口對(duì)應(yīng)的xml也變得比較麻煩,哪些方法要放到繼承里面也比較難定義,有可能某些接口繼承的方法根本用不到。 建議是每個(gè)接口只生成自己需要的xml方法。
-generatedComments選項(xiàng)建議選中,不然會(huì)出現(xiàn)如下所示的提示

第三步:查看各個(gè)生成的目錄

根據(jù)接口中的方法名生成對(duì)應(yīng)的mapper 只需要一個(gè)方法名,不需要參數(shù)和返回值,輸入方法名后,按alt+enter–Generate mybatis sql 就可以生成了

方法名生成sql時(shí)支持if test

一鍵添加@param注解
按alt+enter

結(jié)果:

生成mapper映射文件中resultMap未使用的字段
光標(biāo)放到resultmap標(biāo)簽type屬性值上 -> alt + enter -> generate unUsed properties

結(jié)果:

根據(jù)mapper接口生成mapper映射文件
創(chuàng)建一個(gè)接口 -> 光標(biāo)放到接口名上 -> alt + enter -> generate mybatis mapper for current class -> 選擇mapper映射文件位置

生成find方法
根據(jù)方法名 直接生成sql代碼 方法名有自動(dòng)提示 單表操作的代碼只有寫個(gè)方法名就好了
find方法

生成update方法

生成delete方法

生成count方法

生成測(cè)試用例

生成分頁(yè)查詢 (依賴于 pageHelper)


在DeptServiceImpl類中就可以查看到剛才生成的帶有分頁(yè)功能的代碼。
從表數(shù)據(jù)導(dǎo)出java insert語(yǔ)句
可用于快速構(gòu)造測(cè)試數(shù)據(jù)

Dao中方法名的規(guī)則 find方法
可以使用 select query get 替代find開頭,支持orderBy,distinct, findFirst

update方法
可以使用modify替代update開頭

delete方法
可以使用remove替代delete開頭

count方法
支持distinct

生成不基于Spring的單元測(cè)試
光標(biāo)定位在Mapper中待生成測(cè)試方法的方法聲明上按快捷鍵alt+enter

最終生成的測(cè)試代碼:
public class DaShangMapperTest {
private static DaShangMapper mapper;
@BeforeEach
public static void setUpMybatisDatabase() {
SqlSessionFactory builder = new SqlSessionFactoryBuilder().build(DaShangMapperTest.class.getClassLoader().getResourceAsStream("mybatisTestConfiguration/DaShangMapperTestConfiguration.xml"));
//you can use builder.openSession(false) to not commit to database
mapper = builder.getConfiguration().getMapper(DaShangMapper.class, builder.openSession(true));
}
@Test
public void testInsertDaShang() throws FileNotFoundException {
mapper.insertDaShang();
}
}
使用小技巧
查看字段
在mapper.xml文件的字段中按著ctrl鍵,單擊字段,會(huì)自動(dòng)跳轉(zhuǎn)表表的字段中,方便查看各字段的含義:

根據(jù)實(shí)體類生成sql文件
創(chuàng)建一個(gè)實(shí)體類,在實(shí)體類上右鍵-generate

選擇generte mybatis files


其中:
- unique:唯一索引,不可重復(fù);
- index:普通索引,可重復(fù);
有了表之后就可以創(chuàng)建mapper、mapper.xml、service、serviceImpl了
到此這篇關(guān)于MyBatis CodeHelperPro插件使用教程詳解的文章就介紹到這了,更多相關(guān)MyBatis CodeHelperPro插件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
java 解決異常 2 字節(jié)的 UTF-8 序列的字節(jié)2 無(wú)效的問題
這篇文章主要介紹了java 解決異常 2 字節(jié)的 UTF-8 序列的字節(jié) 2 無(wú)效的問題的相關(guān)資料,需要的朋友可以參考下2016-12-12
一文掌握Spring中循環(huán)依賴與三級(jí)緩存
這篇文章主要介紹了Spring中循環(huán)依賴與三級(jí)緩存,Spring通過三級(jí)緩存解決了循環(huán)依賴,其中一級(jí)緩存為單例池,二級(jí)緩存為早期曝光對(duì)象earlySingletonObjects,三級(jí)緩存為早期曝光對(duì)象工廠(singletonFactories),本文結(jié)合實(shí)例代碼介紹的非常詳細(xì),需要的朋友參考下吧2023-09-09
深入探究一下Java中不同的線程間數(shù)據(jù)通信方式
這篇文章主要來(lái)和大家一起深入探究一下Java中不同的線程間數(shù)據(jù)通信方式,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,需要的可以參考一下2023-04-04
深入解析堆排序的算法思想及Java代碼的實(shí)現(xiàn)演示
堆排序基于二叉堆結(jié)構(gòu)即完全二叉樹,可利用最大堆和最小堆的組建方式來(lái)進(jìn)行排序,這里就來(lái)深入解析堆排序的算法思想及Java代碼的實(shí)現(xiàn)演示2016-06-06
Java實(shí)現(xiàn)爬蟲給App提供數(shù)據(jù)(Jsoup 網(wǎng)絡(luò)爬蟲)
這篇文章主要介紹了Java實(shí)現(xiàn)爬蟲給App提供數(shù)據(jù),即Jsoup 網(wǎng)絡(luò)爬蟲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-01-01
spring中在xml配置中加載properties文件的步驟
這篇文章主要介紹了在spring中如何在xml配置中加載properties文件,本文分步驟給大家介紹在XML配置中加載properties文件的方法,需要的朋友可以參考下2023-07-07
SpringCloud_Eureka服務(wù)注冊(cè)與發(fā)現(xiàn)基礎(chǔ)及構(gòu)建步驟
Eureka服務(wù)注冊(cè)中心,主要用于提供服務(wù)注冊(cè)功能,當(dāng)微服務(wù)啟動(dòng)時(shí),會(huì)將自己的服務(wù)注冊(cè)到Eureka Server,這篇文章主要介紹了SpringCloud中Eureka的配置及詳細(xì)使用,需要的朋友可以參考下2023-01-01

