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註解賦值新對象

<code>

UserInfo

userInfo = UserInfo.builder() .name(

"zzl"

) .email(

"bgood

@sina

.com"

) .build();/<code>

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

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

<code>  

userInfo

= userInfo.toBuilder() .name(

"OK"

) .email(

"zgood

@sina

.com"

) .build();/<code>


分享到:


相關文章: