본문 바로가기
Back-end/JAVA & Spring

@RequiredArgsConstructor란? / spring / lombok

by 꼬바리 2021. 12. 28.

@RequiredArgsConstructor란?

  • final 필드에 대해 생성자를 만들어주는 lombok의 annotation.
  • Spring Framework의 DI(의존성주입) 중 Constructor Injection(생성자 주입)을 임의의 코드 없이 자동으로 설정

 

 

@RequiredArgsConstructor 적용 전

@Component
public class LombokTest {

    private final MyService myservice;
    private final String id;

    @Autowired
    public LombokTest(MyService myservice, String id) {
        this.myservice = myservice;
        this.id = id;
    }

 

@RequiredArgsConstructor 적용 후

@Component
@RequiredArgsConstructor
public class LombokTest {

    private final MyService myservice;
    private final String id;
}

 

정리

  • 새로운 필드를 추가할 때 다시 생성자를 만드는 번거로움을 없앨 수 있다. ( @Autowired 사용하지 않고 의존주입 )
  • @RequiredArgsConstructor이 어떻게 구동하는지 정확히 알아야 예상치 못한 오류를 막을 수 있다.
728x90
반응형

댓글