인생을 코딩하다.

[Spring] 생성자 주입(autowired 3가지 방법) 본문

Spring

[Spring] 생성자 주입(autowired 3가지 방법)

Hyung1 2020. 10. 18. 13:37
728x90
반응형

의존성 주입의 종류로는 Constructor, setter, field 타입이 있다.

 

생성자 주입 (Constructor)

Setter 주입

Field 주입

 

클린코드를 위해서는 필드 주입보다 생성자 주입을 권한다. 간단히 정리하자면

 

- NullPointExcepton을 방지할 수 있다.

 

- 객체에 final 키워드를 사용 할 수 있다.

 

- 순환 참조를 앱 구동시 검출 할 수 있다.

 

- 생성자의 인자가 많아지면 코드가 더러워져 리팩토링을 하게 된다.

 

Spring Document에 나와있는 내용에도

필드주입은 언급도 안하고, 생성자 기반 주입(Construcor Base Injection)과 수정자 주입(Setter Base InJection)의 차이점에 대해서 설명하고 있다. 또한 생성자 기반 주입을 옹호한다고 나와있다.

 

728x90
반응형
Comments