Lombok

在簡單的 Java 對象(POJO)中定義很多私有屬性變量,通過開放的get/set方法來訪問和修改這個類的成員屬性。雖然可以使用IDE自帶的快捷鍵來生成get/set方法,但是一個類中80%都是這些get/set方法,會顯得類的臃腫和不利於代碼的閱讀。

提供一種使用註解的方式來規避生成get/set的方法,但同時又可以使用get/set方法的一種註解

1:Lombok的註解

   Lombok主要常用的註解有:@Data,@getter,@setter,@NoArgsConstructor,@AllArgsConstructor,@ToString,@EqualsAndHashCode,@Slf4j,@Log4j。我們一個一個來看:

@Data註解:在JavaBean或類JavaBean中使用,這個註解包含範圍最廣,它包含getter、setter、NoArgsConstructor註解,即當使用當前註解時,會自動生成包含的所有方法;

@getter註解:在JavaBean或類JavaBean中使用,使用此註解會生成對應的getter方法;

@setter註解:在JavaBean或類JavaBean中使用,使用此註解會生成對應的setter方法;

@NoArgsConstructor註解:在JavaBean或類JavaBean中使用,使用此註解會生成對應的無參構造方法;

@AllArgsConstructor註解:在JavaBean或類JavaBean中使用,使用此註解會生成對應的有參構造方法;

@ToString註解:在JavaBean或類JavaBean中使用,使用此註解會自動重寫對應的toStirng方法;

@EqualsAndHashCode註解:在JavaBean或類JavaBean中使用,使用此註解會自動重寫對應的equals方法和hashCode方法;

@Slf4j:在需要打印日誌的類中使用,當項目中使用了slf4j打印日誌框架時使用該註解,會簡化日誌的打印流程,只需調用info方法即可;

@Log4j:在需要打印日誌的類中使用,當項目中使用了log4j打印日誌框架時使用該註解,會簡化日誌的打印流程,只需調用info方法即可;

在使用以上註解需要處理參數時,處理方法如下(以@ToString註解爲例,其他註解同@ToString註解):

@ToString(exclude="column")

意義:排除column列所對應的元素,即在生成toString方法時不包含column參數;

@ToString(exclude={"column1","column2"})

意義:排除多個column列所對應的元素,其中間用英文狀態下的逗號進行分割,即在生成toString方法時不包含多個column參數;

@ToString(of="column")

意義:只生成包含column列所對應的元素的參數的toString方法,即在生成toString方法時只包含column參數;;

@ToString(of={"column1","column2"}) 

意義:只生成包含多個column列所對應的元素的參數的toString方法,其中間用英文狀態下的逗號進行分割,即在生成toString方法時只包含多個column參數;

2:Lombok插件安裝

  以eclipse安裝lombok爲例

  首先下載lombokj架包 地址:https://projectlombok.org/download

  然後將lombok架包放在eclipse安裝的根目錄中和eclipse.ini文件在同一個文件夾

 運行cmd進入dos界面,跳轉到lombok的目錄下,運行 java -jar lombok.jar 選擇 install

打開eclipse.ini文件查看最後

新建一個maven項目 建立lombok依賴

public class MyLombok {
	@Getter
	@Setter
	private String name;
	
	public static void main(String[] args) {
		MyLombok lombok = new MyLombok();
		lombok.setName("lisi");
		System.out.println(lombok.getName());
	}
}

輸出 lisi

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章