seo92iy
IoC / DI 본문
1. 클래스에 생성자가 1개 뿐이고 생성자로 주입받는 래퍼런스 변수들이 bean으로 등록되어 있다면 그 bean을 자동으로 주입해주도록 제공한다. @Autowired 생략가능 (스프링 4.3 이상 제공)
2. field로 주입받을 땐 애노테이션 붙이기.
3. setter에 애노테이션 붙이는 방법도 있음. IoC 컨테이너가 setter를 통해서 bean을 찾아서 넣어줌.
스프링 래퍼런스에서 권장하는 방법은 1번. 필수적으로 사용해야하는 래퍼런스 없이는 인스턴스를 만들지 못하도록 강제해두었기 때문. 실수가 줄어듦.
순환참조 발생 가능성이 있음. -> 2번, 3번으로 해결. (이건 더 공부)
1,3번 할때는 final 선언 안된다. 2번은 된다.
final 선언하는 이유는 한번 받은 다음 다른 걸로 바뀌지 않는다는 보장을 하기 위해.
'Spring Framework > 인프런' 카테고리의 다른 글
AOP 실습 (0) | 2021.09.01 |
---|---|
AOP (0) | 2021.08.31 |
IoC (0) | 2021.08.30 |
1.2 프로젝트 과제 (0) | 2021.08.26 |
1. 프로젝트 설정 (0) | 2021.08.26 |