Java中的@RequiredArgsConstructor注解详解
一、什么是@RequiredArgsConstructor?
@RequiredArgsConstructor是Lombok的一个注解,简化了我们对@Autowired书写,我们在写Controller层或者Service层的时候,总是需要注入很多mapper接口或者service接口,如果每个接口都写上@Autowired,这样看起来就会很繁琐,@RequiredArgsConstructor注解可以代替@Autowired注解
二、@RequiredArgsConstructor怎么使用?
导包
<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.22</version> </dependency>
使用
将@RequiredArgsConstructor写在类上面

注意点
1、声明的变量必须加上final修饰
2、基于构造方法为属性赋值,容器通过调用类的构造方法将其进行依赖注入
三、@AllArgsConstructor和@RequiredArgsConstructor区别
- @AllArgsConstructor 生成一个包含所有字段的构造方法,如果使用了@Value注入,@Value注入会失效,原因时因为@Value注解是通过对象的set方法赋值的,构造方法的执行还在set方法之前,所以在构造方法中使用变量会变量为null。
- @RequiredArgsConstructor会将类的每一个final字段或者non-null字段生成一个构造方法
总结
@AllArgsConstructor和@RequiredArgsConstructor都可以用来替代@Autowired写法,区别在于@RequiredArgsConstructor必须要有final修饰,如果有@Value注解,@RequiredArgsConstructor修饰可以成功注入,@AllArgsConstructor修饰会注入失败
到此这篇关于Java中的@RequiredArgsConstructor注解详解的文章就介绍到这了,更多相关@RequiredArgsConstructor注解内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
- spring中的特殊注解@RequiredArgsConstructor详解
- 使用@RequiredArgsConstructor注解来取代繁琐的@Autowrired
- 解读@NoArgsConstructor,@AllArgsConstructor,@RequiredArgsConstructor的区别及在springboot常用地方
- Java中@RequiredArgsConstructor注解的基本用法
- @RequiredArgsConstructor如何实现构造器注入
- springboot @RequiredArgsConstructor的概念与使用方式
- Java中@RequiredArgsConstructor使用详解
相关文章
spring boot与redis 实现session共享教程
这篇文章主要介绍了spring boot与redis 实现session共享教程,非常不错,具有参考借鉴价值,需要的朋友可以参考下2017-04-04
System.currentTimeMillis()计算方式与时间的单位转换详解
这篇文章主要介绍了System.currentTimeMillis()计算方式与时间的单位转换详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-05-05
Spring单元测试类ApplicationTests错误的解决
这篇文章主要介绍了Spring单元测试类ApplicationTests错误的解决,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2022-01-01
Spring Boot中KafkaListener的介绍、原理和使用方法案例详解
本文介绍了Spring Boot中 @KafkaListener 注解的介绍、原理和使用方法,通过本文的介绍,我们希望读者能够更好地理解Spring Boot中 @KafkaListener 注解的使用方法,并在项目中更加灵活地应用2023-09-09


最新评论