Java中的@RequiredArgsConstructor注解詳解
一、什么是@RequiredArgsConstructor?
@RequiredArgsConstructor是Lombok的一個(gè)注解,簡(jiǎn)化了我們對(duì)@Autowired書(shū)寫(xiě),我們?cè)趯?xiě)Controller層或者Service層的時(shí)候,總是需要注入很多mapper接口或者service接口,如果每個(gè)接口都寫(xiě)上@Autowired,這樣看起來(lái)就會(huì)很繁瑣,@RequiredArgsConstructor注解可以代替@Autowired注解
二、@RequiredArgsConstructor怎么使用?
導(dǎo)包
<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.22</version> </dependency>
使用
將@RequiredArgsConstructor寫(xiě)在類上面

注意點(diǎn)
1、聲明的變量必須加上final修飾
2、基于構(gòu)造方法為屬性賦值,容器通過(guò)調(diào)用類的構(gòu)造方法將其進(jìn)行依賴注入
三、@AllArgsConstructor和@RequiredArgsConstructor區(qū)別
- @AllArgsConstructor 生成一個(gè)包含所有字段的構(gòu)造方法,如果使用了@Value注入,@Value注入會(huì)失效,原因時(shí)因?yàn)锧Value注解是通過(guò)對(duì)象的set方法賦值的,構(gòu)造方法的執(zhí)行還在set方法之前,所以在構(gòu)造方法中使用變量會(huì)變量為null。
- @RequiredArgsConstructor會(huì)將類的每一個(gè)final字段或者non-null字段生成一個(gè)構(gòu)造方法
總結(jié)
@AllArgsConstructor和@RequiredArgsConstructor都可以用來(lái)替代@Autowired寫(xiě)法,區(qū)別在于@RequiredArgsConstructor必須要有final修飾,如果有@Value注解,@RequiredArgsConstructor修飾可以成功注入,@AllArgsConstructor修飾會(huì)注入失敗
到此這篇關(guān)于Java中的@RequiredArgsConstructor注解詳解的文章就介紹到這了,更多相關(guān)@RequiredArgsConstructor注解內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- spring中的特殊注解@RequiredArgsConstructor詳解
- 使用@RequiredArgsConstructor注解來(lái)取代繁瑣的@Autowrired
- 解讀@NoArgsConstructor,@AllArgsConstructor,@RequiredArgsConstructor的區(qū)別及在springboot常用地方
- Java中@RequiredArgsConstructor注解的基本用法
- @RequiredArgsConstructor如何實(shí)現(xiàn)構(gòu)造器注入
- springboot @RequiredArgsConstructor的概念與使用方式
- Java中@RequiredArgsConstructor使用詳解
相關(guān)文章
spring aop action中驗(yàn)證用戶登錄狀態(tài)的實(shí)例代碼
本篇文章主要介紹了spring aop action中驗(yàn)證用戶登錄狀態(tài)的實(shí)例代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-07-07
解決SpringCloud Config結(jié)合github無(wú)法讀取配置的問(wèn)題
這篇文章主要介紹了解決SpringCloud Config結(jié)合github無(wú)法讀取配置的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-02-02
關(guān)于Mybatis動(dòng)態(tài)sql中test的坑點(diǎn)總結(jié)
這篇文章主要介紹了關(guān)于Mybatis動(dòng)態(tài)sql中test的坑點(diǎn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-01-01
Java中對(duì)象與C++中對(duì)象的放置安排的對(duì)比
這篇文章主要介紹了Java中對(duì)象與C++中對(duì)象的放置安排的對(duì)比的相關(guān)資料,希望通過(guò)本文能幫助到大家,需要的朋友可以參考下2017-09-09
Java多線程案例實(shí)戰(zhàn)之定時(shí)器的實(shí)現(xiàn)
在Java中可以使用多線程和定時(shí)器來(lái)實(shí)現(xiàn)定時(shí)任務(wù),下面這篇文章主要給大家介紹了關(guān)于Java多線程案例之定時(shí)器實(shí)現(xiàn)的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-01-01
SpringBoot實(shí)現(xiàn)健康檢查的完整指南
本文介紹了Spring Boot實(shí)現(xiàn)健康檢查的方法,包括使用Actuator進(jìn)行應(yīng)用健康檢查,自定義健康檢查項(xiàng)目,搭建可視化監(jiān)控大屏和配置告警系統(tǒng),此外,還提供了實(shí)戰(zhàn)案例和避坑指南,幫助讀者更好地理解和應(yīng)用Spring Boot健康檢查功能,需要的朋友可以參考下2025-12-12
IDEA SpringBoot:Cannot resolve configuration&
這篇文章主要介紹了IDEA SpringBoot:Cannot resolve configuration property配置文件問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-07-07

