[스프링 핵심 원리 - 기본편] Lombok (@RequiredArgsConstructor)

강신현·2022년 9월 1일
0

✅ @RequiredArgsConstructor ✅ @Getter ✅ @Setter


설정

Preferences - Annotation processors 에서 Enable annotation processing 을 켜줘야 함

@RequiredArgsConstructor (의존관계 주입)

- 적용 전

@Component
public class OrderServiceImpl implements OrderService {
    private final MemberRepository memberRepository;
    private final DiscountPolicy discountPolicy;
    
	@Autowired // (생성자 하나일 때, 생략 가능)
    public OrderServiceImpl(MemberRepository memberRepository, DiscountPolicy discountPolicy) {
        this.memberRepository = memberRepository;
        this.discountPolicy = discountPolicy;
    }
}

- 적용 후

롬복 라이브러리가 제공하는 @RequiredArgsConstructor 기능을 사용하면 final이 붙은 필드를 모아서 생성자를 자동으로 만들어준다.

@Component
@RequiredArgsConstructor
public class OrderServiceImpl implements OrderService {
    private final MemberRepository memberRepository;
    private final DiscountPolicy discountPolicy;
}

@Getter, @Setter

getter, setter 메서드를 자동으로 생성해준다.
이외에 다양한 기능들이 있음


강의 출처

[인프런 - 김영한] 스프링 핵심 원리 - 기본편

profile
땅콩의 모험 (server)

0개의 댓글