Java的中l(wèi)ombok下的@Builder注解用法詳解
lombok的@Builder注解用法
pom依賴
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>0.10.2</version>
</dependency>lombok注解在java進(jìn)行編譯時(shí)進(jìn)行代碼的構(gòu)建,對(duì)于java對(duì)象的創(chuàng)建工作它可以更優(yōu)雅,不需要寫多余的重復(fù)的代碼,這對(duì)于JAVA開(kāi)發(fā)人員是很重要的
在出現(xiàn)lombok之后,對(duì)象的創(chuàng)建工作更提供Builder方法,它提供在設(shè)計(jì)數(shù)據(jù)實(shí)體時(shí),對(duì)外保持private setter,而對(duì)屬性的賦值采用Builder的方式
這種方式最優(yōu)雅,也更符合封裝的原則,不對(duì)外公開(kāi)屬性的寫操作!
@Builder聲明實(shí)體,表示可以進(jìn)行Builder方式初始化,@Value注解,表示只公開(kāi)getter,對(duì)所有屬性的setter都封閉,即private修飾,所以它不能和@Builder現(xiàn)起用
設(shè)計(jì)實(shí)體
@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注解賦值新對(duì)象
UserInfo userInfo = UserInfo.builder()
.name("zzl")
.email("bgood@sina.com")
.build();@Builder注解修改原對(duì)象的屬性值
修改實(shí)體,要求實(shí)體上添加@Builder(toBuilder=true)
userInfo = userInfo.toBuilder()
.name("OK")
.email("zgood@sina.com")
.build();到此這篇關(guān)于Java的中l(wèi)ombok下的@Builder注解用法詳解的文章就介紹到這了,更多相關(guān)lombok的@Builder注解用法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
ThreadLocal內(nèi)存泄漏問(wèn)題解決方案
這篇文章主要介紹了ThreadLocal內(nèi)存泄漏問(wèn)題解決方案,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-09-09
Java簡(jiǎn)單工廠模式定義與用法實(shí)例分析
這篇文章主要介紹了Java簡(jiǎn)單工廠模式定義與用法,結(jié)合實(shí)例形式分析了java簡(jiǎn)單工廠模式的相關(guān)定義與使用技巧,并給出了原理類圖進(jìn)行總結(jié),需要的朋友可以參考下2019-07-07
Springboot logback-spring.xml無(wú)法加載問(wèn)題
這篇文章主要介紹了Springboot logback-spring.xml無(wú)法加載問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-05-05
Java實(shí)現(xiàn)的zip工具類完整實(shí)例
這篇文章主要介紹了Java實(shí)現(xiàn)的zip工具類,結(jié)合完整實(shí)例形式分析了Java針對(duì)zip文件指定路徑壓縮、遞歸壓縮等相關(guān)操作技巧,需要的朋友可以參考下2018-12-12
Java面試題沖刺第二十六天--實(shí)戰(zhàn)編程
這篇文章主要為大家分享了最有價(jià)值的三道java實(shí)戰(zhàn)面試題,涵蓋內(nèi)容全面,包括數(shù)據(jù)結(jié)構(gòu)和算法相關(guān)的題目、經(jīng)典面試編程題等,感興趣的小伙伴們可以參考一下2021-08-08

