Spring

Spring 필드 주입 vs 생성자 주입(win)

쿠카이든 2022. 2. 15. 11:52
728x90
  • 스프링 필드 주입 대신에 생성자 주입을 권장
    • 변경 불가능한 안전한 객체 생성 가능
    • final 키워드를 추가하면 컴파일 시점에 좀더 일찍 오류를 체크할 수 있음(보통 기본 생성자를 추가할 때 발견할 수 있는데 미리 발견)
public class MemberService{
   private final MemberRepository memberRepository;
   
   public MemberService(MemberRepository memberRepository) {
      this.memberRepository = memberRepository;
   }
}
  • (참고) 롬복일때는 아래와 같은 형식(위와 내용은 같음)
@RequiredArgsConstructor
public class MemberService {
   private final MemberRepository memberRepository;
   ...
}
728x90