@RequiredArgsConstructor
애너테이션의 특징과 이를 활용한 의존성 주입에 대한 정리와 생각.
@RequirdArgsConstructor 애너테이션은 문서를 살펴 보았을 때
초기화 되지 않은 final 필드나,@NotNull 애너테이션이 붙은 필드에 대해 생성자를 생해 주는 기능이 있다.
스프링의 의존성 주입중하나이다.
아래는 같은 코드 이지만
@RequiredArgsConstructor애너테이션이 있고 없고 차이를 아래 예제를 보면 확실히 체감 가능할 것 같다.
먼저 @RequiredArgsConstructor애너테이션을 사용하지 않았을 경우
package com.jjk.jjkshop.dto;
import java.beans.ConstructorProperties;
public class RequiredArgsConstructroTest {
@ConstructorProperties({"firstEx", "secondEx", "thirdEx"})
public RequiredArgsConstructroTest(FirstEx firstEx, SecondEx secondEx, ThirdEx thirdEx)
this.firstEx = firstEx;
this.secondEx = secondEx;
this.thirdEx = thirdEx;
}
아래는 @RequiredArgsConstructor애너테이션 사용했을 경우이다.
package com.jjk.jjkshop.dto;
public class RequiredArgsConstructroTest {
private final FirstEx firstEx;
private final SecondEx secondEx;
private final ThirdEx thirdEx;
}
@RequiredArgsConstructor애너테이션을 통해 편리하게 의존성 주입을 할 수 있다는 것을 배웠다.
Lombok은 정말 간편한 라이브러리같다..
하지만 무분별하게 사용하지 않는 것이 좋을 것 같다는 느낌을 받았다..
'FrameWork > Spring' 카테고리의 다른 글
싱글톤 컨테이너와 싱글톤레지스트리에 대한 고찰 (0) | 2023.07.21 |
---|---|
웹 애플리케이션과 싱글톤 (0) | 2023.07.19 |
Spring은 어떻게 다양한 설정 형식을 지원할까?BeanDefinition (0) | 2023.07.13 |
JPA (작성중) (0) | 2023.07.12 |
Spring Framework에 대해 정리해보기 (1) | 2023.07.11 |
댓글