天天看點

Lombok 安裝、入門 - 消除冗長的 java 代碼

前言:

    逛開源社群的時候無意發現的,用了一段時間,覺得還可以,特此推薦一下。

    lombok 提供了簡單的注解的形式來幫助我們簡化消除一些必須有但顯得很臃腫的

java 代碼。特别是相對于 POJO,光說不做不是我的風格,先來看看吧。

lombok

的官方網址:  

其實到這裡我就介紹完了,開個玩笑,其實官網上有 lombok

三分四十九秒的視訊講解,裡面講的也很清楚了,而且還有文檔可以參考。

在這裡我就不扯太多,先來看一下 lombok

的安裝,其實這個官網視訊上也有講到啦

安裝

    使用 lombok 是需要安裝的,如果不安裝,IDE 則無法解析

lombok 注解。先在官網下載下傳最新版本的 JAR 包,現在是 0.11.2 版本,我用的是

0.11.0

    第一次使用的時候我下載下傳的是最新版本的,也就是我現在用的 0.11.0,到現在已經更新了兩個版本,更新的好快啊

... ...

1. 輕按兩下下載下傳下來的 JAR

包安裝 lombok

    我選擇這種方式安裝的時候提示沒有發現任何

IDE,是以我沒安裝成功,我是手動安裝的。如果你想以這種方式安裝,請參考官網的視訊。

2.eclipse /

myeclipse 手動安裝 lombok

    1. 将 lombok.jar

複制到 myeclipse.ini / eclipse.ini 所在的檔案夾目錄下

    2. 打開

eclipse.ini /

myeclipse.ini,在最後面插入以下兩行并儲存:

        -Xbootclasspath/a:lombok.jar

        -javaagent:lombok.jar

    3.重新開機

eclipse / myeclipse

lombok 注解:

    lombok

提供的注解不多,可以參考官方視訊的講解和官方文檔。

    Lombok

注解線上幫助文檔:    下面介紹幾個我常用的

注解:

        @Data   :注解在類上;提供類所有屬性的 getting 和 setting

方法,此外還提供了equals、canEqual、hashCode、toString

方法

        @Setter:注解在屬性上;為屬性提供 setting

        @Getter:注解在屬性上;為屬性提供 getting

        @Log4j :注解在類上;為類提供一個 屬性名為log 的 log4j

日志對象

        @NoArgsConstructor:注解在類上;為類提供一個無參的構造方法

        @AllArgsConstructor:注解在類上;為類提供一個全參的構造方法

下面是簡單示例

    1.不使用

lombok 的方案

 1

 2public class Person {

 3

 4    private String id;

 5    private String name;

 6    private String identity;

 7    private Logger log = Logger.getLogger(Person.class);

 8    

 9    public Person() {

10        

11    }

12    

13    public Person(String id, String name, String identity) {

14        this.id            

 = id;

15        this.name       = name;

16        this.identity  = identity;

17    }

18    

19    public String getId() {

20        return id;

21    }

22    

23    public String getName() {

24        return name;

25    }

26    

27    public String getIdentity() {

28        return identity;

29    }

30    

31    public void setId(String id) {

32        this.id = id;

33    }

34    

35    public void setName(String name) {

36        this.name = name;

37    }

38    

39    public void setIdentity(String identity) {

40        this.identity = identity;

41    }

42}

43

    2.使用 lombok

的方案

 2@Data

 3@Log4j

 4@NoArgsConstructor

 5@AllArgsConstructor

 6public class Person {

 7

 8    private String id;

 9    private String name;

10  private String identity;

11    

12}

13

上面的兩個 java

類,從作用上來看,它們的效果是一樣的,相比較之下,很明顯,使用 lombok

要簡潔許多,特别是在類的屬性較多的情況下,

同時也避免了修改字段名字時候忘記修改方法名所犯的低級錯誤。最後需要注意的是,在使用 lombok

注解的時候記得要導入 lombok.jar 包到工程