spring IoC2 Spring IoC - ComponentScan, Bean scope ComponentScan 스프링부트 어노테이션인 @SpringBootApplication 은 @ComponentScan 을 포함하고 있다. @SpringBootApplication 이 Application 클래스 위에 붙어있다고 해보자. 컴포넌트 스캔은 빈을 찾아 등록하는데, 스캔하는 범위는 Application 와 같은 경로에 있는 모든 파일 / 하위 파일들이다. @ComponentScan 은 @Repository, @Service, @Controller, @Configuration 을 포함하고 있다. 또한 스캔할 애노테이션을 필터할 수 있는 기능도 제공한다. 컴포넌트 스캔에서 초기에 등록해야할 빈이 많을 경우, 초기 구동 시간이 오래 걸릴 수 있다. 하지만 일단 구동이 되면 후에 느려지진 않는다. 이.. 2021. 1. 10. Spring IoC란 스프링 IoC IoC Inversion of Control, 제어의 역전 일반적인 의존성 제어권은 내가 사용할 의존성은 내가 만드는 것이다. 제어의 역전 (IoC)은 내가 사용할 의존성은 이미 만들어져 있는 것에 연결한다는 의미이다. 의존성 주입(DI, Dependency Injection)은 일종의 IoC 이다. IoC 컨테이너 BeanFactory 는 IoC 컨테이너다. ApplicationContext 는 BeanFactory 를 상속받는다. ApplicationContext 빈을 만들고, 의존성을 엮어주고 제공한다. Bean 인텔리제이에서 Bean은 '녹색 콩'으로 표시해준다. 애노테이션이 붙어있거나 특정 인터페이스를 상속한다. Bean 애노테이션으로 직접 빈으로 등록할수도 있다. Applicat.. 2021. 1. 8. 728x90 이전 1 다음