常用的 lombok 註解

2021-10-14 11:02:19 字數 1307 閱讀 8923

常用的 lombok 註解:

@data   :註解在類上;包含了@tostring,@equalsandhashcode,@getter / @setter和@requiredargsconstructor的功能,提供類所有屬性的 getter 和 setter 方法,此外還提供了equals、canequal、hashcode、tostring 方法

@setter:註解在屬性上;為屬性提供 setter 方法

@getter:註解在屬性上;為屬性提供 getter 方法

@tostring:註解在類上;生成tostring()方法,預設情況下,它會按順序(以逗號分隔)列印你的類名稱以及每個字段。可以這樣設定不包含哪些字段@tostring(exclude = "id") / @tostring(exclude = )

如果繼承的有父類的話,可以設定callsuper 讓其呼叫父類的tostring()方法,例如:@tostring(callsuper = true)

@equalsandhashcode:註解在類上;生成hashcode()和equals()方法,預設情況下,它將使用所有非靜態,非transient欄位。但可以通過在可選的exclude引數中來排除更多字段。或者,通過在parameter引數中命名它們來準確指定希望使用哪些字段。

@nonnull:  註解在屬性上;標識屬性是不能為空,為空則丟擲異常。

@slf4j :註解在類上;根據使用者實際使用的日誌框架生成log日誌物件。

@log4j :註解在類上;為類提供乙個 屬性名為log 的 log4j 日誌物件

@noargsconstructor:註解在類上;為類提供乙個無參的構造方法。當類中有final欄位沒有被初始化時,編譯器會報錯,此時可用@noargsconstructor(force = true),然後就會為沒有初始化的final欄位設定預設值 0 / false / null。對於具有約束的字段(例如@nonnull欄位),不會生成檢查或分配,因此請注意,正確初始化這些字段之前,這些約束無效。

@allargsconstructor:註解在類上;為類提供乙個全參的構造方法

預設生成的方法是public的,如果要修改方法修飾符可以設定accesslevel的值,例如:@getter(access = accesslevel.protected)

@requiredargsconstructor:註解在類上;會生成構造方法(可能帶引數也可能不帶引數),如果帶引數,這引數只能是以final修飾的未經初始化的字段,或者是以@nonnull註解的未經初始化的字段@requiredargsconstructor(staticname = "of")會生成乙個of()的靜態方法,並把構造方法設定為私有的。

Lombok常用註解

idea整合lombok需要安裝lombok外掛程式,這就就省略直接進入主題 getter生成get方法 setter生成set方法 tostring生成tostring方法 data生成get set tostring equals hashcode和無參構造方法 requiredargscons...

Lombok的常用註解

getter setter 作用類上,生成所有成員變數的getter setter方法 作用於成員變數上,生成該成員變數的getter setter方法。可以設定訪問許可權及是否懶載入等。tostring 作用於類,覆蓋預設的tostring 方法,可以通過of屬性限定顯示某些字段,通過exclud...

Lombok常用註解小結

lombok核心特徵是你需要用註解來建立 目的是減少你要寫的樣板 的數量。它為你提供如下,註解,這可能會永遠改變 不是你的生活 getter 和 setter 為你的字段建立getter和setter equalsandhashcode 實現equals 和hashcode tostring 實現t...