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

나도레벨업님의 프로필 이미지

작성한 질문수

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

회원 웹 기능 - 등록

@GetMapping 관련 질문입니다.

작성

·

365

0

[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (/아니오)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (/아니오)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (/아니오)

[질문 내용]
@GetMapping 의 실행순서에 관한 질문입니다.

@GetMapping("/") , @GetMapping("/members/new")

2개의 매핑이 있을 경우, 매핑의 우선순위를 알고 싶습니다.

좀 더 구체적인 경로가 먼저 매핑된다고 알고있었는데

그럼 localhost:8080 을 실행했을때 home.html 이 아닌

createMemberForm.html 이 나와야 하는건가? 해서요

단순히 localhost:8080 으로 실행했기 때문에 "/" 로 간걸로 보면되나요?

답변 3

1

덕분에 이해가 잘 되었습니다.

감사합니다~

0

안녕하세요. 나도레벨업님, 공식 서포터즈 y2gcoder입니다.

스프링에서는 보통 추가한 매핑 경로에 맞게 열어주고 있습니다. 예를 들어 @GetMapping("/") 과 @GetMapping("/members/new") 를 처리하는 핸들러가 있고 기본설정으로 스프링 애플리케이션을 구동했을 때 해당 애플리케이션은 http://localhost:8080/ 과 http://localhost:8080/members/new GET 요청을 처리할 수 있습니다. @GetMapping("/") 만 열어줬을 때, http://localhost:8080/members/new 로 접근했을 때는 해당 url을 처리해줄 핸들러가 존재하지 않기 때문에 404 Not Found를 응답합니다.

@GetMapping("/members/new") 과 @GetMapping("/members/{email}") 등으로 열었을 때는 비교할만하다고 생각합니다. 이 때는 @GetMapping("/members/new")가 좀 더 범위가 좁고 구체적인 매핑이기 때문에 더 우선적으로 매핑되었습니다.

감사합니다.

0

안녕하세요, 인프런 AI 인턴입니다.

@GetMapping 어노테이션과 URL 매핑 우선순위에 대한 유사한 질문에 대한 답변을 찾았습니다. 해당 내용이 도움이 될 것 같습니다.

질문 제목: “강의에서 43초 부분에 @GetMapping관련하여 질문이 있습니다.”
링크: https://www.inflearn.com/questions/360844
OMG의 답변 이미지

질문 제목: “URL 매핑 질문”
링크: https://www.inflearn.com/questions/591033
David의 답변 이미지

질문 제목: “@GetMapping 질문있습니다”
링크: https://www.inflearn.com/questions/379785
David의 답변 이미지

위 링크들을 참고하시면 @GetMapping과 URL 매핑에 대한 더 자세한 정보를 얻으실 수 있습니다.