Java/Spring

컴포넌트 스캔과 자동 의존관계 설정

필리힐리 2021. 8. 22. 18:48

https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-%EC%9E%85%EB%AC%B8-%EC%8A%A4%ED%94%84%EB%A7%81%EB%B6%80%ED%8A%B8/lecture/49586?tab=curriculum 

 

컴포넌트 스캔

 

DemoApplication을 통해 스프링이 실행이 되면 하위에 있는 컴포넌트들을 모두 스캔해

스프링 컨테이너 (IOC Container)에 등록한다.

* 스프링은 컨테이너에 bean을 등록할 때 싱글톤으로 등록한다. (유일한 하나를 등록해 공유)

 

컴포넌트 어노테이션
서비스 어노테이션

 

MVC 패턴에서 사용하는 대표적인 컴포넌트는 @Controller, @Service, @Repository인데

각각 @Component이 설정되어 있기 때문에 스프링이 스캔할 수 있다.

 

@Autowired

 

서비스는 컨트롤러에 입력된 값을 토대로 로직이 실행되기 때문에 의존 관계에 있다고 할 수 있다.

이 의존 관계를 스프링에선 @Autowired 어노테이션을 통해 자동으로 설정할 수 있다.

* 이거 역시 스프링 컨테이너에 등록이 되면 그 안에서 연결해주는 방식

'Java > Spring' 카테고리의 다른 글

객체가 주입 & 객체 지향의 장점  (0) 2021.08.25
자바 코드로 스프링 bean 직접 등록  (0) 2021.08.23
assertThrows  (0) 2021.08.22
Optional - 미완료  (0) 2021.08.22
테스트 케이스 (단위, 통합 테스트)  (0) 2021.08.21