最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java的中l(wèi)ombok下的@Builder注解用法詳解

 更新時間:2023年11月14日 11:49:52   作者:huayang183  
這篇文章主要介紹了Java的中l(wèi)ombok下的@Builder注解用法詳解,lombok注解在java進行編譯時進行代碼的構(gòu)建,對于java對象的創(chuàng)建工作它可以更優(yōu)雅,不需要寫多余的重復(fù)的代碼,在出現(xiàn)lombok之后,對象的創(chuàng)建工作更提供Builder方法,需要的朋友可以參考下

lombok的@Builder注解用法

pom依賴 

<dependency>

            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>0.10.2</version>

   </dependency>

lombok注解在java進行編譯時進行代碼的構(gòu)建,對于java對象的創(chuàng)建工作它可以更優(yōu)雅,不需要寫多余的重復(fù)的代碼,這對于JAVA開發(fā)人員是很重要的

在出現(xiàn)lombok之后,對象的創(chuàng)建工作更提供Builder方法,它提供在設(shè)計數(shù)據(jù)實體時,對外保持private setter,而對屬性的賦值采用Builder的方式

這種方式最優(yōu)雅,也更符合封裝的原則,不對外公開屬性的寫操作!

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

設(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注解賦值新對象

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();

到此這篇關(guān)于Java的中l(wèi)ombok下的@Builder注解用法詳解的文章就介紹到這了,更多相關(guān)lombok的@Builder注解用法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • MyBatis-Plus注解配置、條件構(gòu)造器與自定義SQL的復(fù)雜操作實例詳解

    MyBatis-Plus注解配置、條件構(gòu)造器與自定義SQL的復(fù)雜操作實例詳解

    MyBatis-Plus是一個MyBatis的增強工具,提供快速開發(fā)單表CRUD操作等功能,通過依賴引入和配置,可以快速創(chuàng)建和使用Mapper接口進行數(shù)據(jù)庫操作,這篇文章通過實例代碼介紹MyBatis-Plus注解配置、條件構(gòu)造器與自定義SQL的復(fù)雜操作,感興趣的朋友一起看看吧
    2026-02-02
  • 初識Spark入門

    初識Spark入門

    這篇文章主要介紹了初識Spark入門,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • Java模擬服務(wù)器解析web數(shù)據(jù)

    Java模擬服務(wù)器解析web數(shù)據(jù)

    本篇文章主要給大家詳細分享了搭建JavaWeb服務(wù)器的詳細步驟以及用到的代碼,對此有需要的朋友可以跟著學(xué)習(xí)下,希望能給你帶來幫助
    2021-07-07
  • 詳解使用JavaMailSender給曾經(jīng)心愛的她再中秋發(fā)送一封特別的郵件

    詳解使用JavaMailSender給曾經(jīng)心愛的她再中秋發(fā)送一封特別的郵件

    網(wǎng)站的服務(wù)端向用戶發(fā)郵件時,郵件中往往需要攜帶圖片,鏈接等內(nèi)容。所以為了方便起見,我們一般發(fā)送HTML格式的郵件,那么怎么去拼一個HTML格式的郵件呢?——Thymeleaf。開始之前,先新建一個SpringBoot項目,并添加需要用到的依賴。然后就可以繼續(xù)往下了
    2022-09-09
  • 一文詳解Java屬性為什么不能是is開頭的boolean

    一文詳解Java屬性為什么不能是is開頭的boolean

    在Java實體類定義中,boolean類型的屬性命名常引發(fā)爭議,阿里巴巴Java開發(fā)手冊建議避免使用is作為布爾類型屬性的前綴,原因在于當(dāng)實體類被序列化或反序列化時,基于JavaBean規(guī)范的框架可能會移除或忽略is,導(dǎo)致不一致的字段名,文中介紹的非常詳細,需要的朋友可以參考下
    2024-10-10
  • Kotlin 基礎(chǔ)語法詳細介紹

    Kotlin 基礎(chǔ)語法詳細介紹

    這篇文章主要介紹了Kotlin 基礎(chǔ)語法詳細介紹的相關(guān)資料,需要的朋友可以參考下
    2017-05-05
  • Java class文件格式之屬性詳解_動力節(jié)點java學(xué)院整理

    Java class文件格式之屬性詳解_動力節(jié)點java學(xué)院整理

    這篇文章主要介紹了Java class文件格式之屬性詳解,需要的朋友可以參考下
    2017-06-06
  • Springboot的@Cacheable注解使用方法

    Springboot的@Cacheable注解使用方法

    @Cacheable 是 Spring 框架提供的一種基于緩存的注解,它可以被應(yīng)用在方法上以指示該方法的結(jié)果需要被緩存起來,緩存在哪個 Cache 中以及該方法使用何種緩存鍵,以下代碼展示了如何使用 @Cacheable 注解,感興趣的朋友跟隨小編一起看看吧
    2024-04-04
  • 利用Kafka動態(tài)調(diào)整topic分區(qū)partition

    利用Kafka動態(tài)調(diào)整topic分區(qū)partition

    這篇文章主要介紹了利用Kafka動態(tài)調(diào)整topic分區(qū)partition問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • Spring?Security中如何獲取AuthenticationManager對象

    Spring?Security中如何獲取AuthenticationManager對象

    有時需要使用AuthenticationManager(以下簡稱Manager)對象,可是這個對象不是Bean,沒有直接保存在Spring的Bean庫中,那么如何獲取Spring Security中的這個對象呢,需要的朋友可以參考下
    2022-11-11

最新評論

比如县| 静乐县| 平罗县| 麻江县| 洪泽县| 新源县| 秀山| 河西区| 奉新县| 北碚区| 灵武市| 安多县| 长沙县| 虎林市| 丽水市| 新郑市| 平湖市| 北票市| 汶川县| 文山县| 五原县| 丽江市| 雷州市| 历史| 瓮安县| 桐梓县| 府谷县| 东源县| 集贤县| 曲水县| 平舆县| 商南县| 池州市| 南郑县| 大庆市| 凤山县| 策勒县| 常山县| 平果县| 广河县| 尼玛县|