Spring Boot中使用IntelliJ IDEA插件EasyCode一鍵生成代碼詳細(xì)方法
今天為小伙伴們介紹一款 IntelliJ IDEA 上的免費(fèi)開源插件,叫做 EasyCode,可以方便的根據(jù)數(shù)據(jù)庫生成相應(yīng)的代碼。
EasyCode 是基于 IntelliJ IDEA 開發(fā)的代碼生成插件,支持自定義任意模板(Java,html,js,xml);只要是與數(shù)據(jù)庫相關(guān)的代碼都可以通過自定義模板來生成;支持?jǐn)?shù)據(jù)庫類型與 java 類型映射關(guān)系配置;支持同時(shí)生成生成多張表的代碼,張表有獨(dú)立的配置信息,完全的個(gè)性化定義,規(guī)則由你設(shè)置。
我自己也稍微體驗(yàn)了一把,還是蠻方便的。
1.安裝
首先點(diǎn)擊 File->Settings->Plugins,然后搜索 EasyCode,如下:
安裝成功之后,重啟 IDEA。
2.創(chuàng)建項(xiàng)目
接下來我給大家演示一個(gè)如何在 Spring Boot 中使用 EasyCode。首先我們在 IDEA 中創(chuàng)建一個(gè) SpringBoot 項(xiàng)目,創(chuàng)建過程我就不多說了,如果大家不會,可以在我公眾號后臺回復(fù) springboot,有詳細(xì)的教程。
3.添加數(shù)據(jù)源
由于這個(gè)項(xiàng)目是基于 IDEA 上的 Database Tools 開發(fā)的,因此我們首先要通過 IDEA 上的 Database 連接數(shù)據(jù)源。
接下來配置你的數(shù)據(jù)庫連接信息,如果沒有檢測到合適的數(shù)據(jù)庫 Driver,點(diǎn)擊左下角自動下載:
連接成功后,點(diǎn)擊 OK。默認(rèn)情況下沒有展示連接下的數(shù)據(jù)庫,需要我們手動勾選,例如我這里要連接 vhr 數(shù)據(jù)庫,如下:
4.生成代碼
做完前面三步,準(zhǔn)備工作就算 OK 了,接下來就是生成代碼了。例如我想給 vhr 中所有的代碼生成實(shí)體類、dao 層以及 service 層,方式如下:
首先選中所有的表,然后右鍵單擊,選擇 Easy Code->Generate Code,如下:
第一次添加的時(shí)候,如果有數(shù)據(jù)庫類型沒有對應(yīng)的 Java 類型,就會有提示,這個(gè)根據(jù)它的引導(dǎo)去添加映射關(guān)系即可,例如我在添加的時(shí)候,出了一個(gè)這個(gè)提示:
點(diǎn)擊 Yes,然后去添加自己的類型映射:
添加成功之后,再去做代碼生成,這下就可以了:
這里,如果項(xiàng)目是多模塊項(xiàng)目,可以先選擇代碼生成的 Module,然后設(shè)置代碼生成的 package,最后從下面勾選要生成的代碼模版,點(diǎn)擊 OK 即可。
在代碼生成的過程中,如果沒檢測到 package 下面有 service、dao 以及 entity 等包,工具會提示自動創(chuàng)建,點(diǎn)擊 Yes 即可。
最終生成的代碼如下:
至此,各層的代碼基本都生成了。大部分小伙伴用到這一步可能就 OK 了。
當(dāng)然如果你覺得 EasyCode 自動生成的模版不夠用,或者不好用,我們也可以自定義模版。
5.自定義模版
例如,我想在生成的 dao 層代碼中,額外添加一個(gè)不需要任何條件,獲取所有數(shù)據(jù)的方法(默認(rèn)的生成模版中沒有這個(gè)方法)。
點(diǎn)擊 File->Settings->Easy Code->Template Setting:
可以參考工具自己的定義方式,我們現(xiàn)在先在dao.java 中,添加如下方法:
/** * 查詢所有數(shù)據(jù) * * @param $!tool.firstLowerCase($!{tableInfo.name}) 實(shí)例對象 * @return 對象列表 */ List<$!{tableInfo.name}> getAll();
然后再給它添加一個(gè)配套的 mapper.xml 中的方法,打開 mapper.xml ,添加如下方法:
<select id="getAll" resultMap="$!{tableInfo.name}Map"> select #allSqlColumn() from $!{tableInfo.obj.parent.name}.$!tableInfo.obj.name </select>
配置完成后,點(diǎn)擊 OK。
接下來再去重新生成代碼,就可以看到生成的方法中多了一個(gè)方法了,其他代碼模版的定義與這個(gè)類似,就不再贅述了。
本文主地講解了Spring Boot中使用IntelliJ IDEA插件EasyCode一鍵生成代碼詳細(xì)方法,更多關(guān)于IntelliJ IDEA插件使用技巧請查看下面的相關(guān)鏈接
相關(guān)文章
在pytorch中實(shí)現(xiàn)只讓指定變量向后傳播梯度
今天小編就為大家分享一篇在pytorch中實(shí)現(xiàn)只讓指定變量向后傳播梯度,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-02-02Pygame實(shí)戰(zhàn)之檢測按鍵正確的小游戲
這篇文章主要為大家介紹了利用Pygame模塊實(shí)現(xiàn)的檢測按鍵正確的小游戲:每個(gè)字母有10秒的按鍵時(shí)間,如果按對,則隨機(jī)產(chǎn)生新的字符,一共60s,如果時(shí)間到了,則游戲結(jié)束??靵砀S小編一起學(xué)習(xí)一下吧2021-12-12python登陸asp網(wǎng)站頁面的實(shí)現(xiàn)代碼
這篇文章主要介紹了python登陸asp網(wǎng)站頁面的實(shí)現(xiàn)代碼,需要的朋友可以參考下2015-01-01Python實(shí)戰(zhàn)使用XPath采集數(shù)據(jù)示例解析
這篇文章主要為大家介紹了Python實(shí)戰(zhàn)之使用XPath采集數(shù)據(jù)實(shí)現(xiàn)示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪<BR>2023-04-04Python實(shí)現(xiàn)SVM支持向量機(jī)的示例代碼
SVM 的目的是在數(shù)據(jù)集中找到一條最佳分隔超平面,使得在這個(gè)超平面兩側(cè)的數(shù)據(jù)分別屬于不同的類別,且該超平面與最近的數(shù)據(jù)點(diǎn)之間的距離最大。本文將通過Python實(shí)現(xiàn)SVM支持向量機(jī),感興趣的可以了解一下2023-02-02在Python的Flask框架中構(gòu)建Web表單的教程
Flask框架中自帶一個(gè)Form表單類,通過它的子類來實(shí)現(xiàn)表單將相當(dāng)愜意,這里就為大家?guī)鞵ython的Flask框架中構(gòu)建Web表單的教程,需要的朋友可以參考下2016-06-06