본문 바로가기
공부/Server

@ComponentScan과 @EnableAutoConfiguration의 차이점

by hhhello 2024. 6. 27.

Spring에서 @ComponentScan과 @EnableAuthConfiguration 어노테이션이 있는데 이 둘의 차이점을 알아볼 것이다.

Spring, Spring Boot

@ComponentScan은 Spring 컴포넌트를 검색한다.
반면 @EnableAutoConfiguration은 말그대로 Spring Boot앱의 자동 configuration을 활성화한다.

@ComponentSpan

구체적으로 알아보자. @ComponentSpan은 @Configuration 어노테이션과 함께 사용된다.

지정된 패키지에서 스캔을 시작할 수도 있으며, 이는 basePackageClasses() 또는 basePackages()를 사용하여 정의할 수 있다.
패키지가 지정되지 않으면 @ComponentScan 주석을 선언하는 클래스의 패키지를 시작 패키지로 간주한다.

@EnableAuthConfiguration

이 어노테이션을 사용하면 Spring Boot가 앱을 자동으로 configuration해준다.
우리가 정의한 Bean과 클래스패스에 포함된 jar파일을 자동으로 생성하고 등록하는 것이다.

@SpringBootApplication

Spring Boot 1.2.0부터 @Configuration, @EnableAutoConfigaration, @ComponentScan 세 어노테이션을 결합한 @SpringBootApplication을 사용할 수 있다.