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

해톨님의 프로필 이미지

작성한 질문수

스프링 DB 2편 - 데이터 접근 활용 기술

프로젝트 구조 설명1 - 기본

homeController

해결된 질문

24.06.17 19:30 작성

·

128

·

수정됨

0

homeController에서 return "redirect:/items"; 를통해 itemController에 있는 items로 매핑이 된 메서드로 이동해 items뷰템플릿을 보여주는건 이해했습니다!

그런데 왜 localhost:8080을 웝페이지에 띄웠을 때

static에있는 index.html이 호출이 되지 않고 homeController에있는 /URL이 호출이되나요 ?

requestMapping("/") 이게 기본화면과 매핑된 URL인가요 ??

답변 1

1

OMG님의 프로필 이미지

2024. 06. 18. 00:55

안녕하세요. 해톨님, 공식 서포터즈 OMG입니다.

static/index.html이 존재한다면 다음과 같이 WelcomePageHandlerMapping에 의해 index.html이 웰컴페이지(localhost:8080/)에 등록됩니다만,

image@Controller + 별도의 @RequestMapping("/")가 있다면

@Controller
@RequiredArgsConstructor
public class HomeController {
    @RequestMapping("/")
    public String home() {
        return "redirect:/items"; 
    }
}

우선순위가 명시적으로 선언한 코드가 우선순위를 갖습니다.

만약 아래와 같이 @Controller를 주석처리 한다면

// @Controller

localhost:8080/ 접속 시 static/index.html이 열릴거에요.

만약 예상과 같이 동작하지 않는다면 브라우저 캐시 문제일 수 있으니 댓글 남겨주세요^^

감사합니다.

해톨님의 프로필 이미지
해톨
질문자

2024. 06. 18. 08:15

감사합니다 !!

해톨님의 프로필 이미지

작성한 질문수

질문하기