반응형
- 생성자 주입
생성자 메소드에 주입하는 방식

주로 변하지않거나 필수인 의존관계에 사용
생성자가 하나가 있으면 Autowired 어노테이션 생략가능
필드를 final로 선언가능 -> 필수 주입을 컴파일에러로 알수있음
스프링 빈 라이프 사이클 중 빈 생성 단계에서 의존성 주입이 일어남
- 수정자 주입
Setter(수정자) 메서드에 주입하는 방식

Autowired 어노테이션 필수
-> 주입할 대상이 없으면 오류가 난다 이때 required = false 옵션을 주면 주입이 없어도 동작됨
선택하고 변경가능한 의존관계에 사용
거의 사용하지않음.. 중간에 의존관계를 바꿀일은 잘 없음
스프링 빈 라이프 사이클 중 의존관계 주입 단계에서 의존성 주입이 일어남
- 필드 주입
필드에 직접 어노테이션을 붙혀 주입하는 방식

인텔리제이에서 추천하지않는 주입방식이라고 경고가 뜬다.
DI 프레임워크가 없으면 사용할 수 없는 방식
순수 자바 코드 테스트 시 테스트할 방법이 없음.(무조건 컨테이너를 띄워야함)
스프링을 띄워서 하는 테스트 코드나 스프링 설정파일인 Configuration에서만 간편하게 사용
-> 실제 코드에선 사용하지 않는게 좋음
- 일반 메서드 주입
일반 메서드에 의존관계를 주입 (일반적으로 사용 X, 할수있다 정도만 아는게 맞는듯)

방식은 수정자 주입과 비슷하지만 여러 필드를 주입 받을수 있다.
일반적으로 사용하지않음.
반응형
'Framework > Spring & Spring Boot' 카테고리의 다른 글
[Spring Boot] CORS 설정 (0) | 2021.07.09 |
---|