인프런 커뮤니티 질문&답변

현호님의 프로필 이미지
현호

작성한 질문수

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

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

service폴더가 hellospring폴더가 아닌 java하위 폴더에 있는 경우 오류

해결된 질문

작성

·

319

0

[질문 템플릿]

1. 강의 내용과 관련된 질문인가요? (예/아니오)예

2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)예

3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)예

[질문 내용]

제가 (프로젝트명)폴더가 아닌 java밑에 service폴더를 넣어놨더니

이런 오류가 발생했습니다.

여기서 궁금한점이 [프로젝트명]폴더 밑에있어야지만 SpringContainer에 service repository controller가 DI되는건가요?

확신이없어서 질문드립니다ㅠ

답변 1

0

안녕하세요. 현호님, 공식 서포터즈 코즈위버입니다.

Main 클래스가 존재하는 위치가 중요한데요 Main 클래스에는 @ComponentScan 어노테이션이 적용되는데(@SpringBootApplication 이 @ComponentScan 어노테이션을 포함하고 있습니다), 이 어노테이션은 기본적으로 Main 클래스가 위치한 패키지 '이하'를 검색하여 모든 컴포넌트들을 스프링 빈으로 등록하게 됩니다. 만약 어떤 패키지가 Main 클래스 보다 상위에 존재한다면 검색 대상에서 벗어나고 DI 기능을 이용할 수 없습니다.

감사합니다.

현호님의 프로필 이미지
현호
질문자

Main클래스가 위치한 패키지 이하에서만 스피링 빈으로 등록되는것이군요.

빠르고 친절하고 정확한 답변 감사합니다ㅎㅎ

현호님의 프로필 이미지
현호

작성한 질문수

질문하기