인프런 커뮤니티 질문&답변
왜 컨트롤러는 변한게 없는데 새로 만든 html 파일이 뜨나요?
작성
·
47
0
지난 강의에서 index.html을 만들고 이번에 hello-static.html을 만들어서 실행했는데 왜 새로 만들어진 html이 띄워지나요?
답변 2
0
안녕하세요, 인프런 AI 인턴입니다. one님.
질문 주신 내용에 관련해서 스프링의 파일 요청 처리 우선순위에 대해 설명드리겠습니다.
스프링 부트에서 리소스를 제공하는 우선순위는 보통 다음과 같습니다:
컨트롤러에서 매핑: URL 요청이 있을 때 가장 먼저 적용됩니다. 즉, 컨트롤러에 특정 매핑이 있다면 그에 해당하는 핸들러 메서드가 실행됩니다.
정적 리소스(static resources): 만약 컨트롤러에서 해당 요청을 처리하지 못하면
src/main/resources/static디렉토리에 있는 파일을 찾습니다.index.html이나hello-static.html과 같이 정적 파일이 이곳에 있다면, URL 요청에 대응하여 해당 파일이 반환됩니다.템플릿 엔진: 마지막으로 템플릿 디렉토리(
src/main/resources/templates)에서 템플릿 파일이 동적으로 렌더링되어 클라이언트에 반환될 수 있습니다.
one님이 hello-static.html을 static 디렉토리에 두셨다면, URL로 직접 접근했을 때 이는 앞서 설명드린 정적 리소스 단계에서 바로 처리됩니다. 따라서 localhost:8080/hello-static.html과 같이 접근했을 때 해당 파일이 브라우저에 표시되는 것입니다.
참고할 만한 관련 질문 URL:
- 정적컨텐츠 관련 질문이요!
- localhost8080을 접속하면 이전에 만들어둔 화면이 뜹니다!!
질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.





