인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

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

tjsdka7434님의 프로필 이미지
tjsdka7434

작성한 질문수

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

애노테이션 매핑 정보 사용

어노테이션매핑정보 - 404 오류 문의드립니다

작성

·

1.5K

·

수정됨

0

 안녕하세요. 어노테이션 매핑정보 사용 강의 보고 궁금한점이 생겨 문의 남겼습니다.

지금까지 강의에 나온것과 똑같이 코드를 작성했습니다. 그런데 실행하면 예상했던 값이 나오지 않고 404 오류가 떠요.

실행창에는 아래와 같은 메세지가 나옵니다.

16:09:26.879 [http-nio-8080-exec-1] WARN org.springframework.web.servlet.PageNotFound -- No mapping for GET /hello

16:09:26.886 [http-nio-8080-exec-1] WARN org.springframework.web.servlet.PageNotFound -- No endpoint GET /hello.

 

그래서 HelloController 클래스위에 @RequestMapping을 지우고 대신 @Controller을 추가해봤더니 그제서야 강의와 같은 결과가 나옵니다.

제 스프링 버전은 3.x, jdk17인데 이것과 관련이 있을까요? 같은 코드인데 왜 저는 404가 나오는지 궁금합니다...

답변 2

3

토비님의 프로필 이미지
토비
지식공유자

강의 마지막에 추가한 스프링 부트 3에서 강의 예제를 따라할 때 주의할 점에서 설명한 내용이네요.

스프링 부트 3에서 스프링 버전이 업데이트가 되면서 @RequestMapping만으로 DispatcherServlet이 인식하던 기능이 더 이상 지원되지 않고 @Controller까지 등록이 필요하게 바뀌었습니다. 그래서 @RequestMapping만 있을 때 스프링 컨트롤러로 등록이 안 되어서 에러가 나게됩니다.

스프링은 구 버전 코드의 호환성을 잘 지키는 편인데 이번 변경은 그래서 아쉬움이 있습니다.
강의 예제는 부트 3이 나오기 전에 2.7 버전을 기준으로 테스트 하고 영상을 만든 것이라, 사소한 것이지만 몇 가지 차이점이 있습니다. 관련 내용을 강의 제일 마지막에 추가해두었으니 참고해보세요.

0

[스프링 부트 3.0으로 예제 업그레이드] 강의 에서 15:30 초 입니다.

 

저도 동일한 오류로 추가 강의보고 해결했습니다. 답변 감사합니다.

 

tjsdka7434님의 프로필 이미지
tjsdka7434

작성한 질문수

질문하기