Idea中使用lombok,簡化代碼技巧

在項目中bean或者entity等實體類中經常需要寫get、set、toString、equals、hashCode等方法,有時多的時候幾十個實體類中都充斥著這種重複的代碼,雖然我們可以使用Eclpse、Idea中的快捷鍵來生成,但是每當有改動時,通常都會重新生成一遍get/set方法,耗時且枯燥,這個就是樣板代碼。而lombok就是通過註釋的方式來消除這種樣板代碼的,十分的快捷方便。不過,許多人 對lombok有爭議,lombok的缺點是無法支持多種參數構造器的重載。但是,比較簡單的使用技巧我們可以掌握如下幾個方面:

Idea中使用lombok,簡化代碼技巧

1、安裝lombok

Idea中安裝插件比較方便簡單,直接File-->Setting(快捷鍵Ctrl+Shift+S),選擇Plugins。

Idea中使用lombok,簡化代碼技巧

Idea中使用lombok,簡化代碼技巧

Idea中使用lombok,簡化代碼技巧

至此,lombok插件安裝完成。

2、pom.xml中添加lombok依賴。


org.projectlombok
lombok
1.16.10

3、示例代碼

@Data
public class SysTradeType implements Serializable {
private String agentId;
private String tradeType;
private String mch_id;
}

其中,@Data相當於@Getter @Setter @RequiredArgsConstructor @ToString @EqualsAndHashCode的合集

常用註解如下:

  • @Getter / @Setter:可以作用在類上和屬性上,放在類上,會對所有的非靜態(non-static)屬性生成Getter/Setter方法,放在屬性上,會對該屬性生成Getter/Setter方法。並可以指定Getter/Setter方法的訪問級別。

  • @EqualsAndHashCode:默認情況下,會使用所有非瞬態(non-transient)和非靜態(non-static)字段來生成equals和hascode方法,也可以指定具體使用哪些屬性。

  • @ToString:生成toString方法,默認情況下,會輸出類名、所有屬性,屬性會按照順序輸出,以逗號分割。

  • @NoArgsConstructor, @RequiredArgsConstructor and @AllArgsConstructor:無參構造器、部分參數構造器、全參構造器,當我們需要重載多個構造器的時候,Lombok就無能為力了。

  • @Data:@ToString, @EqualsAndHashCode, 所有屬性的@Getter, 所有non-final屬性的@Setter和@RequiredArgsConstructor的組合,通常情況下,我們使用這個註解就足夠了


分享到:


相關文章: