複製鏈接
請複製以下鏈接發送給好友

Lombok

鎖定
Lombok項目是一個java庫,它可以自動插入到編輯器和構建工具中,增強java的性能。不需要再寫getter、setter或equals方法,只要有一個註解,就有一個功能齊全的構建器、自動記錄變量等等。 [1] 
外文名
Lombok
定    義
一個java庫 [1] 

LombokLombok常用註解

LombokData

整合了Getter、Setter、ToString、EqualsAndHashCode、RequiredArgsConstructor註解。

LombokGetter

快速構建Getter方法。

LombokSetter

快速構建Setter方法。

LombokToString

快速將當前對象轉換成字符串類型,便於log

LombokEqualsAndHashCode

快速進行相等判斷。
官方示例 [2] 
import lombok.EqualsAndHashCode;

@EqualsAndHashCode
public class EqualsAndHashCodeExample {
  private transient int transientVar = 10;
  private String name;
  private double score;
  @EqualsAndHashCode.Exclude private Shape shape = new Square(5, 10);
  private String[] tags;
  @EqualsAndHashCode.Exclude private int id;
  
  public String getName() {
    return this.name;
  }
  
  @EqualsAndHashCode(callSuper=true)
  public static class Square extends Shape {
    private final int width, height;
    
    public Square(int width, int height) {
      this.width = width;
      this.height = height;
    }
  }
}

LombokNonNull

判斷變量(對象)是否為空。
官方示例 [3] 
import lombok.NonNull;

public class NonNullExample extends Something {
  private String name;
  
  public NonNullExample(@NonNull Person person) {
    super("Hello");
    this.name = person.getName();
  }
}
參考資料