好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

使用@RequiredArgsConstructor注解来取代繁琐的@Autowrired

一、前言

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

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

二、导入Lombok依赖

?

1

2

3

4

< dependency >

     < groupId >org.projectlombok</ groupId >

     < artifactId >lombok</ artifactId >

</ dependency >

三、注解使用

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

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

@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差不多,但是我们要多去尝试一些新的东西,才能成长哈。

到此这篇关于使用@RequiredArgsConstructor注解来取代繁琐的@Autowrired的文章就介绍到这了,更多相关@RequiredArgsConstructor注解内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

原文链接:https://blog.csdn.net/qq_52423918/article/details/124289819

查看更多关于使用@RequiredArgsConstructor注解来取代繁琐的@Autowrired的详细内容...

  阅读:20次