• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

http://localhost:8080/hello에서 에러가 나요

23.06.07 17:43 작성 23.06.07 17:44 수정 조회수 263

0

서버도 껐다가 켜서 다시 하고 새로고침하고 클리어도 했는데 안돼요

답변 1

답변을 작성해보세요.

0

y2gcoder님의 프로필

y2gcoder

2023.06.09

안녕하세요, 내미 님. 공식 서포터즈 y2gcoder 입니다.

HelloController가 컴포넌트 스캔의 대상 패키지에 있어야 빈으로 등록되고, 컨트롤러의 역할을 할 수 있습니다. HelloSpringApplication에 달려있는 @SpringBootApplication을 들어가보시면 안에 @ComponentScan이 있습니다.

기본적으로 @ComponentScan을 단 클래스가 있는 패키지와 하위 패키지를 컴포넌트 스캔 하위 패키지로 잡습니다. 보여주신 캡처본 기준으로 하면 src.main.java.hello.hellospring 패키지부터 하위 패키지까지를 컴포넌트 스캔 대상으로 설정하고 그 안의 @Component, @Service, @Controller 등이 붙은 클래스들을 찾아 스프링 빈으로 등록해주는 것입니다.

그래서 HelloController는 src.main.java.controller 패키지에 있기 때문에 컴포넌트 스캔의 대상이 되지 않습니다. 정상적으로 동작하도록 만들어주기 위해서는 강의와 같이 controller 패키지 전체를 src.main.java.hello.hellospring 내로 옮겨주시기 바랍니다 :)


감사합니다.

내미님의 프로필

내미

질문자

2023.06.09

오 진짜 되네요 압도적 감사

y2gcoder님의 프로필

y2gcoder

2023.06.09

파이팅입니다!