java~lombok里的Builder注解


lombok注解在java進行編譯時進行代碼的構建,對於java對象的創建工作它可以更優雅,不需要寫多余的重復的代碼,這對於JAVA開發人員是很重要的,在出現lombok之后,對象的創建工作更提供Builder方法,它提供在設計數據實體時,對外保持private setter,而對屬性的賦值采用Builder的方式,這種方式最優雅,也更符合封裝的原則,不對外公開屬性的寫操作!

@Builder聲明實體,表示可以進行Builder方式初始化,@Value注解,表示只公開getter,對所有屬性的setter都封閉,即private修飾,所以它不能和@Builder現起用

一般地,我們可以這樣設計實體!

@Builder(toBuilder = true)
@Getter
public class UserInfo {
  private String name;
  private String email;
  @MinMoney(message = "金額不能小於0.")
  @MaxMoney(value = 10, message = "金額不能大於10.")
  private Money price;

}

@Builder注解賦值新對象

UserInfo userInfo = UserInfo.builder()
        .name("zzl")
        .email("bgood@sina.com")
        .build();

@Builder注解修改原對象的屬性值

修改實體,要求實體上添加@Builder(toBuilder=true)

 userInfo = userInfo.toBuilder()
        .name("OK")
        .email("zgood@sina.com")
        .build();

感謝各位的閱讀!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM