1. 程式人生 > >lombok插件

lombok插件

col import 靜態 option ansi string tid group truct

IDE:

IntelliJ IDEA

首先在設置的插件欄中安裝lombok,然後使用如下的pom依賴:

<dependency>
   <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <optional>true</optional>
</dependency>

註解介紹:

  • @toString

生成toString()方法,默認情況下,它會按順序(以逗號分隔)打印你的類名稱以及每個字段。
可以這樣設置不包含哪些字段@ToString(exclude 
= "id") / @ToString(exclude = {"id","name"}) 如果繼承的有父類的話,可以設置callSuper 讓其調用父類的toString()方法,例如:@ToString(callSuper = true)

import lombok.ToString;
@ToString(exclude = {"id","name"})
public class User {
     private Integer id;
     private String name;
     private String phone;
}
//生成toString方法如下:
public
String toString(){ return "User(phone=" + phone + ")"; }
  • @Getter and @Setter
你可以用@Getter / @Setter註釋任何字段,讓lombok自動生成默認的getter / setter方法。
默認生成的方法是public的,如果要修改方法修飾符可以設置AccessLevel的值,例如:@Getter(access = AccessLevel.PROTECTED)
import lombok.AccessLevel;
import lombok.Getter;
import lombok.Setter;
public class User { @Getter(AccessLevel.PROTECTED) @Setter private Integer id; @Getter @Setter private String name; @Getter @Setter private String phone; }
  • @EqualsAndHashCode
生成hashCode()和equals()方法,
默認情況下,它將使用所有非靜態,非transient字段。但可以通過在可選的exclude參數中來排除更多字段。或者,通過在parameter參數中命名它們來準確指定希望使用哪些字段。
  • @RequiredArgsConstructor
@RequiredArgsConstructor會生成構造方法(可能帶參數也可能不帶參數),
如果帶參數,這參數只能是以final修飾的未經初始化的字段,或者是以@NonNull註解的未經初始化的字段
@RequiredArgsConstructor(staticName = "of")會生成一個of()的靜態方法,並把構造方法設置為私有的
  • @Data
@Data 包含了@ToString,@EqualsAndHashCode,@Getter / @Setter和@RequiredArgsConstructor的功能

以後有更多的使用到的會再做補充

lombok插件