convention

의존성 주입

필드 주입, 세터 주입, 생성자 주입 3가지 방법 중 생성자 주입이 자주 사용되는 추세이다.

생성자 주입 사용의 장점은

  1. 단일 책임 원칙 관점
  2. 필드에 final 키워드 사용
  3. 순환 참조 방지
  4. DI 컨테이너의 결합성과 테스트 용이성
  5. NullPointerException 방지

사용 예시

@Controller
public class TestController() {

		private final TestService testService;

		public TestController(TestService testService) {
				this.testService = testService;
		}
}

Lombok