lombock

如何使用

@Data

該注解相當(dāng)于同時(shí)加上以下注解@Setter @Getter,@ToString,@EqualsAndHashCode,作用于類中

@Getter@Setter

作用于屬性上,自動(dòng)生成get,set方法.

@NonNull

該注解快速判斷是否為空,如果為空,則拋出java.lang.NullPointerException

@Synchronized

該注解自動(dòng)添加到同步機(jī)制,有趣的是,生成的代碼并不是直接鎖方法,而是鎖代碼塊, 作用范圍是方法上

@ToString

該方法大家應(yīng)該非常熟悉,但需要注意的是:@ToString有多個(gè)屬性可以進(jìn)一步設(shè)置:

callSuper 是否輸出父類的toString方法,默認(rèn)為false

includeFieldNames 是否包含字段名稱,默認(rèn)為true

exclude 排除生成tostring的字段

@Cleanup

注釋可用于確保已分配的資源被釋放,如IO的連接關(guān)閉。

為什么出現(xiàn),解決了什么問題

1.可以幫助我們避免空指針

2.自動(dòng)幫我們調(diào)用close()方法

3.自動(dòng)生成Getter/Setter方法

4.自動(dòng)生成無參數(shù)構(gòu)造函數(shù)

5.自動(dòng)生成全參數(shù)構(gòu)造函數(shù)

6.自動(dòng)為所有字段添加@ToString, @EqualsAndHashCode, @Getter方法,為非final字段添加? ? ? @Setter,和@RequiredArgsConstructor!

以前是怎么做的

1.我們會(huì)定義很多的domain實(shí)體類,需要給每個(gè)字段手動(dòng)添加setter/getter.?

2.需要打印對(duì)象的時(shí)候,需要自己手動(dòng)的添加toString()方法.?

3.給domain添加無參構(gòu)造函數(shù)和所有參數(shù)的構(gòu)造函數(shù).

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容