在Intellij IDEA中使用lombok插件進行綜合項目開發(fā)

為什么要使用lombok啦粹?

????應(yīng)用場景:在JavaEE項目中經(jīng)常使用bean,entity等類,絕大部分數(shù)據(jù)類中都需要生成get /set 方法讲坎、重載toString借跪、 equals和hashCode方法政己。
????使用優(yōu)點:
????????1.雖然在IDEA開發(fā)環(huán)境下都有自動生成這些代碼的快捷方式,但自動生成這些代碼后掏愁,如果bean中的屬性一旦有修改歇由、刪除或增加時,需要重新生成或刪除get /set等方法果港,給代碼維護增加負擔沦泌。
????????2.即使需要在這些方法中需要做額外的操作,只需要在對應(yīng)類中手動重寫即可辛掠。

未使用lombok之前谢谦,我們?nèi)绾巫龅模?/h2>

在類中alt+enter,然后選擇需要的方法萝衩。
如下:
public class Student {

    private String name;

    private String studentId;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getStudentId() {
        return studentId;
    }

    public void setStudentId(String studentId) {
        this.studentId = studentId;
    }

    @Override
    public String toString() {
        return "Student{" +
                "name='" + name + '\'' +
                ", studentId='" + studentId + '\'' +
                '}';
    }
}

如何使用lombok回挽?

一 在idea中安裝lombok插件

????1.依次點擊Preferences - Plugins,搜索lombok猩谊,最后點擊Lombok Plugin (對千劈,就下載最多的那個)intall。
????2.重啟idea即可使用


image

二 在項目對于的xml文件中添加maven依賴

<!--lombok-->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
        </dependency>

三 示例代碼及說明


/**
* 如果沒有添加@Setter注解预柒,則無法使用setAge()等方法队塘。
* 使用lombok之后,省去了許多沒必要的get宜鸯,set憔古,toString,equals淋袖,hashCode代碼鸿市,
簡化了代碼。
* 注:@Data注解的作用相當于 @Getter @Setter @RequiredArgsConstructor
@ToString @EqualsAndHashCode的合集即碗。
* 注:@Log 省去了在LombokTest中添加 getLogger的如下代碼: * private static final java.util.logging.Logger log =
java.util.logging.Logger.getLogger(LogExample.class.getName()); */
@Setter
@Getter
@ToString 
@EqualsAndHashCode //@Data
public class Student { 
      private String name; 
      private int age;
      private String male; 
      private String studentNo;
}
                  

四 測試程序

@Log
public class LombockTest {
public static void main(String[] args) {

      //創(chuàng)建第一個學生對象
      Student student = new Student(); 
      student.setAge(19);          
      student.setMale("male"); 
      student.setName("Spring Boot"); 
      student.setStudentNo("2017");
      System.out.println(student.toString());

      //創(chuàng)建第二個學生對象
      Student student2 = new Student();
      student2.setAge(19);
      student2.setMale("male"); 
      student2.setName("Spring Boot");                       
      student2.setStudentNo("2017");

      //判斷兩個對象的引用是否相等 
      System.out.println(student.equals(student2));
      student2.setStudentNo("2018");
      System.out.println(student.equals(student2));
      log.info("lombok test"); }
}

五 運行結(jié)果

Student(name=SPring Boot焰情,age=19,male=male剥懒,studentNo=2017)
true
false

ps:在使用了lombok之后内舟,又重寫了該方法,會覆蓋此方法初橘,代碼就不貼了验游,親測有效充岛。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市耕蝉,隨后出現(xiàn)的幾起案子崔梗,更是在濱河造成了極大的恐慌,老刑警劉巖垒在,帶你破解...
    沈念sama閱讀 218,607評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件蒜魄,死亡現(xiàn)場離奇詭異,居然都是意外死亡场躯,警方通過查閱死者的電腦和手機谈为,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,239評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來推盛,“玉大人峦阁,你說我怎么就攤上這事≡懦桑” “怎么了?”我有些...
    開封第一講書人閱讀 164,960評論 0 355
  • 文/不壞的土叔 我叫張陵驹闰,是天一觀的道長瘪菌。 經(jīng)常有香客問我,道長嘹朗,這世上最難降的妖魔是什么师妙? 我笑而不...
    開封第一講書人閱讀 58,750評論 1 294
  • 正文 為了忘掉前任,我火速辦了婚禮屹培,結(jié)果婚禮上默穴,老公的妹妹穿的比我還像新娘。我一直安慰自己褪秀,他們只是感情好蓄诽,可當我...
    茶點故事閱讀 67,764評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著媒吗,像睡著了一般仑氛。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上闸英,一...
    開封第一講書人閱讀 51,604評論 1 305
  • 那天锯岖,我揣著相機與錄音,去河邊找鬼甫何。 笑死出吹,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的辙喂。 我是一名探鬼主播捶牢,決...
    沈念sama閱讀 40,347評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼赃额,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了叫确?” 一聲冷哼從身側(cè)響起跳芳,我...
    開封第一講書人閱讀 39,253評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎竹勉,沒想到半個月后飞盆,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,702評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡次乓,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,893評論 3 336
  • 正文 我和宋清朗相戀三年吓歇,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片票腰。...
    茶點故事閱讀 40,015評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡城看,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出杏慰,到底是詐尸還是另有隱情测柠,我是刑警寧澤,帶...
    沈念sama閱讀 35,734評論 5 346
  • 正文 年R本政府宣布缘滥,位于F島的核電站轰胁,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏朝扼。R本人自食惡果不足惜赃阀,卻給世界環(huán)境...
    茶點故事閱讀 41,352評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望擎颖。 院中可真熱鬧榛斯,春花似錦、人聲如沸搂捧。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,934評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽异旧。三九已至意述,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間吮蛹,已是汗流浹背荤崇。 一陣腳步聲響...
    開封第一講書人閱讀 33,052評論 1 270
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留潮针,地道東北人术荤。 一個月前我還...
    沈念sama閱讀 48,216評論 3 371
  • 正文 我出身青樓,卻偏偏與公主長得像每篷,于是被迫代替她去往敵國和親瓣戚。 傳聞我的和親對象是個殘疾皇子端圈,可洞房花燭夜當晚...
    茶點故事閱讀 44,969評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 1.1 Spring IoC容器和bean簡介 本章介紹了Spring Framework實現(xiàn)的控制反轉(zhuǎn)(IoC)...
    起名真是難閱讀 2,583評論 0 8
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)子库,斷路器舱权,智...
    卡卡羅2017閱讀 134,657評論 18 139
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法,類相關(guān)的語法仑嗅,內(nèi)部類的語法宴倍,繼承相關(guān)的語法,異常的語法仓技,線程的語...
    子非魚_t_閱讀 31,639評論 18 399
  • 1.1 spring IoC容器和beans的簡介 Spring 框架的最核心基礎(chǔ)的功能是IoC(控制反轉(zhuǎn))容器鸵贬,...
    simoscode閱讀 6,717評論 2 22
  • 1.實現(xiàn)快速排序算法 問題描述給定一個無序數(shù)組int[ ] a,使用快速排序算法進行排序脖捻。 解題思路對于快速排序阔逼,...
    孫樹沖閱讀 1,323評論 0 1