成人怡红院-成人怡红院视频在线观看-成人影视大全-成人影院203nnxyz-美女毛片在线看-美女免费黄

站長資訊網(wǎng)
最全最豐富的資訊網(wǎng)站

12款idea插件,讓你提升編碼效率

本篇文章跟大家一起聊聊在idea中,能提升編碼效率的12種插件,希望對大家有所幫助。

12款idea插件,讓你提升編碼效率

java一鍵拖拽布局生成代碼:立即使用

1. lombok

之前對lombok還有爭議,到底該不該在項目中使用,為此我還專門寫了一篇文章《迷茫了,我們該不該用lombok?》。

現(xiàn)在新版的idea已經(jīng)內(nèi)置了lombok插件,所以用它是一種趨勢。

我之所以把lombok放在整篇文章的第一個介紹,是因為它真的可以幫我少寫很多代碼,特別是entity、DTO、VO、BO中的。

我們用User類舉例,以前定義javabean需要寫如下代碼:

public class User {      private Long id;     private String name;     private Integer age;     private String address;      public User() {      }      public User(Long id, String name, Integer age, String address) {         this.id = id;         this.name = name;         this.age = age;         this.address = address;     }      public Long getId() {         return id;     }      public String getName() {         return name;     }      public Integer getAge() {         return age;     }      public String getAddress() {         return address;     }       public void setId(Long id) {         this.id = id;     }      public void setName(String name) {         this.name = name;     }      public void setAge(Integer age) {         this.age = age;     }      public void setAddress(String address) {         this.address = address;     }      @Override     public boolean equals(Object o) {         if (this == o) returntrue;         if (o == null || getClass() != o.getClass()) returnfalse;         User user = (User) o;         return Objects.equals(id, user.id) &&                 Objects.equals(name, user.name) &&                 Objects.equals(age, user.age) &&                 Objects.equals(address, user.address);     }      @Override     public int hashCode() {         return Objects.hash(id, name, age, address);     }      @Override     public String toString() {         return"User{" +                 "id=" + id +                 ", name='" + name + ''' +                 ", age=" + age +                 ", address='" + address + ''' +                 '}';     } }

該User類中包含了:成員變量、getter/setter方法、構(gòu)造方法、equals、hashCode方法。

咋一看,代碼還是挺多的。而且還有個問題,如果User類中的代碼修改了,比如:age字段改成字符串類型,或者name字段名稱修改了,是不是需要同步修改相關(guān)的成員變量、getter/setter方法、構(gòu)造方法、equals、hashCode方法全都修改一遍?

好消息是用lombok可以解決這個問題。

如果是idea2020.3之前的版本,需要在idea中安裝如下插件:

12款idea插件,讓你提升編碼效率
但idea2020.3之后,idea已經(jīng)內(nèi)置了lombok的功能。

有了lombok插件,現(xiàn)在我們在idea只用這樣寫代碼,就能實現(xiàn)上面的功能了:

@ToString @EqualsAndHashCode @NoArgsConstructor @AllArgsConstructor @Getter @Setter public class User {      private Long id;     private String name;     private Integer age;     private String address; }

簡直太輕松了,真的可以少寫很多代碼。

此外,我們還需要在項目的pom文件中,引入lombok的依賴包,不然項目會跑不起來。

2. Free Mybatis plugin

在國內(nèi)mybatis已經(jīng)成為了最主流的數(shù)據(jù)庫框架了,該框架屬于半自動化的ORM持久化框架,相對于hibernate這種全自動化的持久化框架更靈活,性能更高。

mybatis中,我們需要自己定義mapper和對應(yīng)的xml文件完成綁定。

在這里我們以用戶表為例,首先需要定義UserMapper接口:

public interface UserMapper { 	 int insertUser(UserModel user); }

然后需要UserMapper.xml配置文件:

<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper         PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"         "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.sue.jump.mappers.UserMapper">      <sql id="selectUserVo">         id, name, age, sex      </sql>      <insert id="insertUser" parameterType="com.sue.jump.model.UserModel">         INSERT INTO user         <trim prefix="(" suffix=")" suffixOverrides=",">             <if test="id != null ">                 id,             </if>             <if test="name != null  and name != ''">                 name,             </if>             <if test="age != null ">                 age,             </if>             <if test="sex != null ">                 sex,             </if>         </trim>         <trim prefix="values (" suffix=")" suffixOverrides=",">             <if test="id != null ">                 #{id},             </if>             <if test="name != null  and name != ''">                 #{name},             </if>             <if test="age != null ">                 #{age},             </if>             <if test="sex != null ">                 #{sex},             </if>         </trim>     </insert> </mapper>

UserMapper.xml文件中,mapper標(biāo)簽的namespace對應(yīng)UserMapper接口名,而insert標(biāo)簽的id=insertUser,正好對應(yīng)UserMapper接口中的insertUser方法。

那么,在項目中如何通過UserMapper類中的getUser方法,能夠快速訪問UserMapper.xml文件中的getUser方法?

答:這就需要使用Free Mybatis plugin插件了。

12款idea插件,讓你提升編碼效率

安裝了該插件之后,在UserMapper接口的接口名和方法名的左邊,會多了兩個綠色的箭頭,我們點(diǎn)擊該箭頭,就能跳轉(zhuǎn)到UserMapper.xml文件對應(yīng)的mapper標(biāo)簽或者insertUser語句上。

12款idea插件,讓你提升編碼效率

此外,在UserMapper.xml文件的insertUser語句的左邊,也會多出一個綠色的箭頭,我們點(diǎn)擊該箭頭,也能跳轉(zhuǎn)到UserMapper接口的insertUser方法上。

12款idea插件,讓你提升編碼效率

有了這個插件,我們就能在mapper和xml之間自由切換,自由玩耍了,再也不用像以前那樣搜索來搜索去。

3.Translation

有些小伙伴,包括我自己可能英語不太好(我英語剛過四級)。

我們在給變量或者方法取名時,要想半天。特別是在閱讀JDK英文文檔時,遇到了一些生僻字,簡直頭大。

有個好消息是使用:Translation插件,能夠讓我們在文檔中自由飛翔。

12款idea插件,讓你提升編碼效率

安裝完Translation插件之后,在other settings中多了一個Translation菜單。

點(diǎn)擊該菜單:

12款idea插件,讓你提升編碼效率

在右邊的窗口中,可以選擇翻譯軟件。

選中需要翻譯的英文文檔:

12款idea插件,讓你提升編碼效率

在右鍵彈窗的窗口中,選擇Translation選項,會彈如下窗口:

12款idea插件,讓你提升編碼效率
一段英文段落,一下子翻譯成了中文,簡直太爽了。

4.Alibaba Java Coding Guidelines

如果你是從事Java開發(fā)工作的小伙伴,肯定看過阿里巴巴的《Java開發(fā)手冊》。

該手冊總結(jié)了我們在日常開發(fā)過程中,可能會遇到的問題。從編程規(guī)約、異常日志、單位測試、安全規(guī)約、Mysql數(shù)據(jù)庫和工程結(jié)構(gòu),這6大方面,規(guī)范了開發(fā)的流程,確保我們能寫出高效、優(yōu)雅的代碼。

但這些規(guī)范性的東西,僅僅靠人的自覺性,很難達(dá)到預(yù)期的效果。

為了解決這個問題,阿里巴巴推出了Alibaba Java Coding Guidelines插件,能夠通過該插件,直接查出不合規(guī)范的代碼。

12款idea插件,讓你提升編碼效率

安裝了該插件之后,按下快捷鍵:Ctrl+Alt+Shift+J,可以可對整個項目或單個文件進(jìn)行編碼規(guī)約掃描。

12款idea插件,讓你提升編碼效率

掃描后會將不規(guī)范的代碼按從高到低。

目前有三個等級顯示在下方:

  • Blocker 崩潰
  • Critical 嚴(yán)重
  • Major 重要

12款idea插件,讓你提升編碼效率

點(diǎn)擊左邊其中一個不規(guī)范的代碼行,右邊窗口會立刻顯示不規(guī)范的詳細(xì)代碼,便于我們快速定位問題。

nice。

5. GenerateAllSetter

很多時候,我們需要給某個對象賦值,如果參數(shù)比較多的話,需要手寫大量的setter或者getter代碼。

有沒有辦法一鍵搞定呢?

答:有,使用GenerateAllSetter插件。

12款idea插件,讓你提升編碼效率

安裝完插件之后,在創(chuàng)建的對象上,按快捷鍵下:alt + enter

在彈出的窗口中選擇:Generate all setter with default value。

12款idea插件,讓你提升編碼效率

就會自動生成如下代碼:

12款idea插件,讓你提升編碼效率

簡直太方便了。

6. SequenceDiagram

我們平時在閱讀源碼時,為了梳理清楚內(nèi)部邏輯,經(jīng)常需要畫一些時序圖

如果我們直接畫,會浪費(fèi)很多時間,而且畫的圖不一定正確。

這時可以使用:SequenceDiagram插件。

12款idea插件,讓你提升編碼效率

選擇具體某個方法,右鍵選擇:sequence diagram選項:

12款idea插件,讓你提升編碼效率

之后,會出現(xiàn)時序圖:

12款idea插件,讓你提升編碼效率

從此以后,能夠成為畫圖高手了,完美。

7. CheckStyle-IDEA

在代碼格式方面,有許多地方,需要我們注意,比如:無用導(dǎo)入、沒寫注釋、語法錯誤、方法太長等等。

有沒有辦法,可以在idea中,一次性檢測出上面的這些問題呢?

答:使用CheckStyle-IDEA插件。

CheckStyle-IDEA是一個檢測代碼格式是否滿足規(guī)范的工具,其中用得比較多的是Google規(guī)范和Sun規(guī)范。

12款idea插件,讓你提升編碼效率

安裝完插件后,在idea的下方會出現(xiàn):CheckStyle選項:

12款idea插件,讓你提升編碼效率

點(diǎn)擊左邊的綠色按鈕,可以掃描代碼。在中間位置,會顯示不符合代碼規(guī)范的原因。

雙擊代碼,即可直接跳轉(zhuǎn)到具體代碼:

12款idea插件,讓你提升編碼效率

8.JRebel and XRebel

在idea中開發(fā)Java項目,有個很不爽的地方是:每次修改一個類或者接口,都需要重啟服務(wù),否則不會運(yùn)行最新地方。

而每次重啟,都需要花大量的時間。

有沒有辦法,Java代碼修改后不用重啟系統(tǒng),立即生效呢?

答:使用JRebel and XRebel插件。

如圖:

12款idea插件,讓你提升編碼效率

安裝完成之后,這里會有兩個綠色的按鈕,并且在右邊多了一個選項Select Rebel Agents:

12款idea插件,讓你提升編碼效率
其中一個綠色的按鈕,表示熱部署啟動項目,另外一個表示用debug默認(rèn)熱部署啟動項目。

Select Rebel Agents選項中包含三個值:

  • JRebel:修改完代碼,不重啟服務(wù),期望代碼直接生效。
  • XRebel:請求過程中,各個部分代碼性能監(jiān)控。例如:方法執(zhí)行時間,出現(xiàn)的異常,SQL執(zhí)行時間,輸出的Log,MQ執(zhí)行時間等。
  • JRebel+XRebel:修改完代碼,不重啟服務(wù),并且監(jiān)控代碼。

9. Codota

說實話,idea現(xiàn)有的代碼提示功能,已經(jīng)很強(qiáng)大了。

但如果你使用過Codota插件,它會讓你寫代碼的速度更上一層樓。

12款idea插件,讓你提升編碼效率

安裝完插件之后,我們在寫代碼時,它會給你一些提示:

12款idea插件,讓你提升編碼效率
這些提示是基于ai統(tǒng)計出來的,非常有參考價值。

10. GsonFormat

很多時候,我需要把json中的參數(shù),轉(zhuǎn)換成實體對象中的參數(shù)。或者把實體對象中的參數(shù),轉(zhuǎn)換成json中的參數(shù)。

以前我們都是手動一個變量,一個變量的拷貝的。

但現(xiàn)在有個好消息是,idea的GsonFormat插件可以幫我們完成這件事。

12款idea插件,讓你提升編碼效率

安裝完插件之后,先創(chuàng)建一個空類:

12款idea插件,讓你提升編碼效率

按下快捷鍵:alt + s,會彈出下面這個窗口:

12款idea插件,讓你提升編碼效率

然后在該窗口中,錄入json數(shù)據(jù)。

點(diǎn)擊確定按鈕,就會自動生成這些代碼:

12款idea插件,讓你提升編碼效率
簡直帥呆了。

11. Rainbow Brackets

我們平時寫代碼的時候,括號是讓我們非常頭疼的地方,特別是代碼邏輯很多,層層嵌套的情況。

一眼很難看出,代碼是從哪個括號開始,到哪個反括號結(jié)束的。

有沒有辦法解決這個問題呢?

答:使用Rainbow Brackets插件。

12款idea插件,讓你提升編碼效率
安裝完插件之后,括號和反括號,在代碼中會自動按照不同顏色做區(qū)分:
12款idea插件,讓你提升編碼效率
非常顯目,非常直觀。

12. CodeGlance

有些時候,我們閱讀的代碼很多,比如某個類中包含的方法和成員變量很多。

從上往下,一點(diǎn)點(diǎn)往下翻,會浪費(fèi)很多時間。那么有沒有辦法,能夠快速翻到想看的代碼呢?

答:有,可以使用CodeGlance插件。

12款idea插件,讓你提升編碼效率

安裝完插件之后,在代碼右側(cè),會出現(xiàn)下面這個窗口:

12款idea插件,讓你提升編碼效率
它是代碼的縮略圖,通過它我們能夠非常快速的切換代碼塊。

最后說一句(求關(guān)注,別白嫖我)

如果這篇文章對您有所幫助,或者有所啟發(fā)的話,幫忙掃描下發(fā)二維碼關(guān)注一下,您的支持是我堅持寫作最大的動力。
求一鍵三連:點(diǎn)贊、轉(zhuǎn)發(fā)、在看。
關(guān)注公眾號:【蘇三說技術(shù)】,在公眾號中回復(fù):面試、代碼神器、開發(fā)手冊、時間管理有超贊的粉絲福利,另外回復(fù):加群,可以跟很多BAT大廠的前輩交流和學(xué)習(xí)。

(學(xué)習(xí)視頻分享:編程基礎(chǔ)視頻)

贊(0)
分享到: 更多 (0)
?
網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號
全棵女性艺术写真素材| 无卡无码无免费毛片| 亚洲AV成人午夜福利在线观看| 夜夜添无码一区二区三区| 爱性久久久久久久久| 国产熟女一区视频在线播放| 麻花豆传媒剧国产MV免费天美| 日日摸夜夜添夜夜添视频| 亚洲精品美女久久久久99| MATUREHDHQ成熟| 国内精品久久久久久久97牛牛| 女人高潮娇喘抽搐喷水动态视频| 五十老熟女高潮嗷嗷叫| 7777精品伊人久久久大香线蕉| 国产放荡对白视频在线观看| 旅人蕉天堂鸟的区别视频| 玩小雪跪趴把腿分到最大影视频| 中文日产无乱码AV在线观| 国产成人一区二区三区| 免费看的WWW哔哩哔哩| 午夜亚洲AV日韩AV无码大全| 97精品伊人久久久大香线蕉| 国内精品伊人久久久久网站| 人妻少妇精品国语对白| 亚洲熟妇无码八AV在线播放| 闺蜜张开腿让我爽了一夜| 麻花传媒0076在线观看| 无码中文字幕日韩专区 | 八戒八戒神马影院在线观看1| 国外免费IPHONE网站| 青青青国产精品一区二区| 亚洲欧洲美洲无码精品VA| 国产WW久久久久久久久久| 女人18片毛片60分钟完整版| 亚洲国产精品无码久久| 丰满人妻一区二区三区无码AV | 亚洲国产欧美国产综合久久| 动漫人物桶动漫人物免费观看网站 | XXXXX18日本人HDXX| 精品日产1区2卡三卡麻豆| 视频免费网站入口| 97人妻碰碰碰久久久久| 久久99精品国产99久久6尤物| 天天躁日日躁狠狠躁退| JAPANESE日本熟妇伦| 久久精品伊人一区二区三区| 无码无遮挡在线观看免费| 波多野结衣AV中文一区二区三区 | 996久久国产精品线观看| 精品久久亚洲中文字幕| 偷拍亚洲另类无码专区制服 | 国产亚洲精品A在线观看APP| 日韩精品无码免费专区午夜不卡 | 久久久无码人妻精品无码 | 欧美一区二区视频在线| 影音先锋AV天堂| 国内精品久久久久久久97牛牛| 少妇粗大进出白浆嘿嘿视频| H无遮挡H无码黄3D漫画| 老头边吃奶边弄进去呻吟| 亚洲成A人片在线观看中文| 国产成人亚洲综合A∨| 人与动人物XXXXAV片| 中文字幕亚洲综合小综合在线| 精产国品一二三产区区| 午夜福利片手机在线播放| 丁香激情五月中文字幕亚洲| 人C交Z〇○Z〇○ⅩⅩ| 7777精品伊人久久久大香线蕉| 久久无码精品一区二区三区| 亚洲精品成人网线在线播放VA| 国产精品99无码一区二区| 色一情一乱一伦麻豆| めんたいさんでぃふぇんすっ甘雨| 男女性高爱潮免费网站| 一二三四视频中文字幕在线看| 精品欧美H无遮挡在线看中文| 亚洲AV深夜高潮无码成人| 国产精品无圣光一区二区| 少妇无码一区二区三区免费| 成人欧美日韩一区二区三区| 人妻被按摩到潮喷中文不卡| AJ四色鸳鸯真假区别| 麻豆国产VA免费精品高清在线| 亚洲综合AV色婷婷国产野外 | 无遮挡粉嫩小泬女视频 | 亚洲欧美精品一中文字幕| 极品呦女JAPANESE| 亚洲А∨天堂久久精品PPYPP| 国产一产二产三精华液| 小蜜桃HD中字高清在线| 国产乱子伦在线观看| 小S货又想挨C了叫大声点小| 国产精品无码一区二区三区免费 | 夜夜爽一区二区三区精品| 久久青草免费福利资源站| 一本一道AV无码中文字幕麻豆| 久久久精品人妻一区亚美研究所| 亚洲色欲色欲WWW成人网| 久久成人无码专区| 亚洲最大AV一区二区三区| 久久人妻无码中文字幕第一| 在线亚洲专区高清中文字幕| 免费少妇A级毛片| 99亚洲国产精品精华液| 人妻丰满熟妇av无码区乱| 波多野结衣AV在线无码中文观看| 日韩欧群交P片内射中文| 嗯啊WW免费视频网站| 天堂AV无码大芭蕉伊人AV不卡| 国产精品久久久久久亚洲AV| 亚洲AV日韩综合一区久热| 精品国产AⅤ一区二区三区V视界| 亚洲日韩AV一区二区三区中文| 久久青青草原精品国产APP| 中文字幕人妻无码乱精品| 欧美 亚洲 国产 日韩 综AⅤ| JAVAPARSER乱偷| 日韩一区二区无码视频| 国产成人亚洲日韩欧美| 亚欧色一区W666天堂| 精品无人区麻豆乱码无限制| 真人做受试看120分钟小视频| 欧产日产国产精品精品| 超碰色偷偷男人的天堂| 玩弄人妻少妇老师美妇厨房| 国精产品一二三产区| 一本一道AV无码中文字幕麻豆| 女人国产香蕉久久精品| 吃瓜爆料黑料不打烊| 西西人体艺术摄影| 久久69精品久久久久久HB| 中文字幕人妻无码专区APP| 秋霞电影院yy2933| 国产A级毛多妇女视频| 亚洲AV永久无码精品无码少妇| 久久久久久久久久久精品| FREE性VIDEOXXⅩ欧美| 少妇亚洲XXXX| 记忆女神的女儿们| 中文字幕一区二区三区日韩精品 | 国产成人午夜性A一级毛片老女人 国产成人午夜无码电影在线观看 国产成人午夜精品影院 | 最新的国产成人精品2022| 日产乱码一二三区别免费必看| 国产精品自在拍首页视频8| 亚洲综合网站色欲色欲| 秋霞电影院yy2933| 国产欧美另类久久久精品图片 | 亚洲男同GV在线观看| 欧美XXXX做受视频| 国产成人片无码视频在线观看 | 女人自熨全过程直播| 高清播放器欧美大片| 亚洲精品无码少妇30P| 欧美日韩在线亚洲一区蜜芽| 国产精品V欧美精品∨日韩| 亚洲无人区码卡二卡三卡四卡| 欧洲VODAFONEWIFI粗| 国产三级精品三级在线专区| 中文字幕人成乱码中国| 熟妇高潮一区二区精品视频| 精品人妻一区二区三区四区在线 | 国产老熟女精品一区熟女AV| 一个添下面两个吃奶| 色五月丁香五月综合五月亚洲| 精品深夜AV无码一区二区老年 | 熟女内射婷婷直播| 久久久WWW成人免费毛片| 成人麻豆精品激情视频在线观看| 亚洲国产精品久久一线不卡 | 够了够了到高C了好多水视频| 亚洲熟妇成人精品二区蜜臀| 日本熟妇人妻XXXXX野外呻| 精品免费看国产一区二区| 草草久久久无码国产专区| 亚洲欧美综合一区二区三区| 日本XXXX少妇高清HD| 精品无码日韩一区二区三区不卡 | 欧美VPSWINDOWS性另类| 国产色视频网站免费| 9久9久女女免费视频精品| 亚洲AV无码成人精品区欧洲| 强 暴 疼 哭 处 女| 精品乱码久久久久久中文字幕| 波多野结衣一二三区AV高清 | 欧美FREESEX呦交| 黑人巨茎大战俄罗斯美女| 被陌生人在地铁揉到高潮| 亚洲色一色鲁一鲁鲁| 天堂中文在线最新版WWW| 免费下载破解看片APP的软件| 国产无遮挡免费真人视频在线观看 | 国产精品门事件AV| AI换脸造梦JENNIE喷水| 亚洲国产欧美在线成人| 色一乱一伦一图一区二区精品| 门卫老头吮她的花蒂| 国内盗摄视频一区二区三区| 差差差很疼视频30分钟无掩盖| 一面膜上边一面膜下边日本|