Lombok
1. Lombok 介紹
- Lombok 通過增加一些“處理程序”,可以讓 Java 變得簡潔、快速;
- Lombok 能以註解形式來簡化 Java 代碼,提高開發效率。開發中經常需要寫的 Javabean,都需要花時間去添加相應的 getter/setter,也許還要去寫構造器、equals 等方法,而且需要維護;
- Lombok 能通過註解的方式,在編譯時自動爲屬性生成構造器、getter/setter、equals、hashcode、toString 方法。在源碼中沒有 getter 和 setter 方法,但是在編譯生成的字節碼文件中有 getter 和 setter 方法。這樣就省去了手動重建這些代碼的麻煩,使代碼看起來更簡潔。
2. Lombok 使用
- 添加 Lombok 的 jar 包:
將 lombok.jar(本例使用版本:1.18.10),添加到模塊目錄下,並添加到 ClassPath;
- 爲 IDEA 添加 Lombok 插件(連接網絡使用);
- 第一步:
- 第二步:
- 第三步:
- 第四步:
- 第一步:
- 安裝完畢後,重啓 IDEA;
- 新建一個類 Student:
3. Lombok 常用註解
- @Getter 和 @Setter:
- 作用:生成成員變量的 get 和 set 方法;
- 寫在成員變量上,指對當前成員變量有效;
- 寫在類上,對所有成員變量有效;
- 注意:靜態成員變量無效;
- @ToString:
- 作用:生成 toString() 方法;
- 該註解只能寫在類上;
- @NoArgsConstructor 和 @AllArgsConstructor:
- @NoArgsConstructor:無參數構造方法;
- @AllArgsConstructor:滿參數構造方法;
- 該註解只能寫在類上;
- @EqualsAndHashCode:
- 作用:生成 hashCode() 和 equals() 方法;
- 該註解只能寫在類上;
- @Data:
- 作用: 生成 setter/getter、equals、canEqual、hashCode、toString 方法,如爲final 屬性,則不會爲該屬性生成 setter 方法;
- 該註解只能寫在類上。