inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

토비의 스프링 부트 - 이해와 원리

@Component 스캔

@ComponentScan 에 대해서

해결된 질문

1060

이동열

작성한 질문수 2

1

 @Component를 사용하기 위해서는 @ComponentScan을 사용하는데 더 나아가 @component가 메타 어노테이션으로 쓰이는 @Service나 @Controller 같은 경우는 @ComponentScan없이 동작이 되는데요.

내부적으로는 @Component 어노테이션을 사용해 @ComponentScan이 필요하지 않을까 했는데 없어도 동작이 되는것 같은데요.

이는 동작이 다른건가요?

spring-jdbc spring-boot spring

답변 2

2

이동열

자세한 답변 감사합니다. 이것 저것 테스트 하는 와중에 초기 스프링부트 코드에서 @Controller을 붙이면 @ComponentScan을 굳이 명시하지 않아도 동작해서 의아했는데요. @SpringBootApplication안에 @ComponentScan이 메타 어노테이션으로 적용이 되어 있었네요. 코드를 이리저리 스위칭하다가 헷갈리는 부분이었는데요. 자세한 답변 감사합니다.

0

gguu

ㄴ맞아요 추가적으로 그림이 있으면 좋을거 같아서 캡처업로드 해봅니다 ㅎㅎ

image

그리고 또 강의에는 나오지 않았지만 RestController에 메타어노테션인 ResponseBody가 있어서 메서드 레벨에 @ResponseBody를 작성하지 않아도 되는 장점이 있습니다.

0

토비

@ComponentScan이 없어도 동작이 된다는 말씀이 어떤 것인지 잘 모르겠습니다.
어떤 애노테이션이 붙어도 스프링 컨테이너가 빈으로 인식하려면 직접 등록을 해주든가(registerBean), 컴포넌트 스캔으로 자동 등록이 되게 하든가, @Import로 직접 포함을 시켜줘야 합니다.
어떤 경우에 @Service, @Controller가 @ComponentScan 없이 동작을 하는지 구체적으로 알려주시면 좀 더 살펴보겠습니다. @Controller가 붙은 클래스를 @ComponentScan 대신 직접 주입 또는 @Import 등으로 등록하는 것도 가능하긴 합니다.

11강에서 cmd에서 spring shell에 $ init 하면 Fail 메세지

0

75

2

TestRestTemplate 을 통해 테스트 실행시 웹 요청 정보가 콘솔에 표시되지 않습니다.

0

85

1

섹션7. 자동구성 정보파일분리 강의 질문(@MyAutoConfiguration 붙힌 이유)

0

201

2

WebApplicationContext를 DispatcherServlet에 this로 넘기는 것

0

279

2

인프라 빈 구성 정보의 분리에서 EnableMyAutoConfiguration 질문드립니다.

0

210

2

질문드립니다.

0

232

2

spring boot 3.3.7로 학습중입니다.

0

369

2

Serverproperties 객체 생성 후 @Impor 어노테이션 사용 이유 용도

0

162

2

spring start io 에서 이제더이상 2.x버전은 지원하지 않는 것 같습니다.

1

296

2

Springboot 3.2 이상에서 파라미터 추론관련

0

913

4

binding error

0

220

3

Arrays.copyOf 메서드의 타입 세이프

1

155

2

MyOnClassCondition에 있는 matches method의 Invoke 횟수

1

233

3

인용구의 출처가 궁금합니다.

0

259

1

프로퍼티 빈의 후처리기 도입 AnnotationUtils의 사용

0

236

2

SimpleCacheConfiguration과 빈 등록

0

168

2

MyAutoConfigImportSelector 에서 생성자로 ClassLoader를 주입받을 수 있는 점

0

244

1

IntelliJ project jenerator spring initailizr

0

150

1

강의 자료 레퍼지토리에 업로드

0

216

1

강의자료

0

388

1

Hikari 라이브러리가 없으면 오류가 나는거 아닌가요

0

314

2

Tomcat 포트 프로퍼티 미설정시 랜덤 포트 설정 문의

0

476

5

@Import 로 Bean을 등록해야하는 기준이 뭔지 궁금합니다.

0

340

2

application.properties파일내 프로퍼티 이름

0

210

1