IntelliJ IDEA使用技巧—使用EasyCode插件一鍵生成代碼04期

在現現在的軟件開發過程當中,軟件開發人員將不少的精力放在重複的編碼中。特別是流行的MVC架構模式下,項目各個層次的功能更加獨立,這也間接的形成了代碼的類似度更高。所以須要尋找一種能夠減小軟件開發人員重複編碼的方式,讓軟件開發人員能夠將更多的精力放在業務邏輯編碼以及其餘更具備價值的工做上。html

今天小編向你們介紹一種一款IntelliJ IDEA上的免費開源插件EasyCode,能夠方便的根據數據庫生成相應的代碼。實際就是利用逆向工程自動生成實體類和dao成的代碼。java

EasyCode是基於IntelliJ IDEA開發的代碼生成插件,支持自定義任意模板(Java,html,js,xml)。只要是與數據庫相關的代碼均可以經過自定義模板來生成。spring

1)支持數據庫類型與java類型映射關係配置。數據庫

2)支持同時生成生成多張表的代碼。springboot

3)每張表有獨立的配置信息。架構

4)徹底的個性化定義,規則由使用者設置。app

  第一步:安裝工具

首先點擊左上角File->Settings->Plugins選項,以後搜索「EasyCode」插件,如圖所示:編碼

點擊紅色箭頭所示按鈕,安裝成功以後,需重啓IDEA。spa

  第二步:建立項目

在IDEA中建立一個spring boot項目(小編使用之前已有的項目爲例),針對項目的建立過程在這裏就很少說了,若是你們有什麼不懂的話能夠在下方公衆號(Java精選)留言,小編會及時回覆或者在公衆號後臺回覆「spring boot」關鍵詞獲取視頻資料和項目源碼,教程是很是的詳細的噢。

spring boot搭建項目,推薦相關資料教程:https://blog.yoodb.com/springboot/tutorial

  第三步:添加數據源

因爲項目是基於IDEA上的Database Tools開發的,所以先要經過IDEA上的 Database鏈接數據源,選擇MySQL數據庫(小編電腦只有MySQL客戶端鏈接,所以以它爲例),如圖所示:

接下來配置所選數據庫鏈接信息(host、端口號、密碼以及數據庫驅動),若是沒有檢測到合適的數據庫 Driver,點擊左下角自動下載,如圖所示

 

 

鏈接成功後,點擊 OK。默認狀況下沒有展現鏈接下的數據庫,須要咱們手動勾選。(有時下載驅動比較費時間,常常鏈接超時,多試幾回便可。)

  第四步:生成代碼

作完前面三步後準備工做基本完成,接下來就是生成代碼。好比小編把當前dba庫中的全部表生成生成實體類、dao 層以及 service 層,參考步驟以下幾方面。

1)選中全部的表,而後右鍵單擊,選擇 Easy Code->Generate Code,以下:

注意:在第一次添加時,若是有數據庫類型沒有對應的Java類型,就會有提示信息,你們根據它的引導去添加映射關係便可。

2)添加成功以後,再去作代碼生成,如圖所示:

若是項目是多模塊項目,能夠先選擇代碼生成的 Module,而後設置代碼生成的 package,最後從下面勾選要生成的代碼模版,點擊 OK 便可。

3)在代碼生成的過程當中,若是沒檢測到 package 下面有 service、dao 以及 entity 等包,工具會提示自動建立,點擊Yes便可。

最終生成的代碼,如圖所示:

 

到這裏,各個層面的代碼已經生成完畢。若是以爲EasyCode自動生成的模版不夠用,或者很差用,咱們也能夠自定義模版。

自定義模版

在生成的各個層代碼中,如何額外添加一個不須要任何條件或者其餘的方法,而默認的生成模版中沒有這些方法呢?

點擊 File->Settings->Easy Code->Template Setting,能夠看到全部層次的生成代碼規則,如圖所示:

 

小編就不在這裏一一舉例,只用dao層和mapper.xml文件給你們演示一下吧,例如獲取全部信息的方法,點擊 File->Settings->Easy Code->Template Setting,如圖所示:

能夠參考工具本身的定義規則,在dao.java類中,添加以下方法,代碼以下:

/**
 * 查詢全部信息
 *
 * @param $!tool.firstLowerCase($!{tableInfo.name}) 實例對象
 * @return 對象列表
 */
List<$!{tableInfo.name}> selectInfos();

  

而後再給它添加一個配套的mapper.xml文件中的調用方法,編輯mapper.xml,如圖所示:

在上圖所示文件中添加方法,代碼以下:

<select id="selectInfos" resultMap="$!{tableInfo.name}Map">
    select
      #allSqlColumn()
    from $!{tableInfo.obj.parent.name}.$!tableInfo.obj.name
</select>

  

配置完成後,點擊OK。接下來,你們就能夠再去從新生成代碼,這時在生成的方法中就會發現多了一個剛剛定義的方法,其餘代碼模版的定義與這個相似,我就再也不多說了。好了,感興趣的朋友們不妨試試。

相關文章
相關標籤/搜索