@RequiredArgsConstructor注解

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

@RequiredArgsConstructor注解

掉发的小王   2022-06-03 我要评论

一、前言

小编最近在项目里看到有的同事大神用到了Lombok中的一个@RequiredArgsConstructor,带着好奇发现这个东西就是简化了一些@Autowired注解,想想如果一个Service还有几十个注入,这样就要写上几十个@Autowired,这样代码显示很臃肿哈。有了@RequiredArgsConstructor注解,我们就可以减少@Autowired的书写。用过的人都说好哈,下面带大家一起使用一下!

在我们写controller或者Service层的时候,需要注入很多的mapper接口或者另外的service接口,这时候就会写很多的@Autowired注解,代码看起来很乱,还很繁琐

二、导入Lombok依赖

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
</dependency>

三、注解使用

友情提示:类上加上@RequiredArgsConstructor,需要注入的类要用final声明,或者使用@NonNull。

@RestController
@RequestMapping("/test")
@Slf4j
// 作用在类上
@RequiredArgsConstructor
public class TestController {

    // 必须声明为final类型
    private final TestService testService;
    
    // 或者使用Lombok的注解
    @NonNull
    private TestMapper testMapper;
    
    @GetMapping("/hello3")
    public int hello3(){

        Test test = new Test();
        test.setName("sss");
        test.setId("0");

        return testMapper.insert(test);
    }
}

四、总结

有时候这样感觉没什么用,和@Autowrired差不多,但是我们要多去尝试一些新的东西,才能成长哈。

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们