오늘은 간단하게 스프링 부트에서 기본적으로 제공하는 정적 컨텐츠 기능에 대해 알아보겠습니다.
정적 컨텐츠 기능이란, html파일을 그대로 웹브라우저에 전달해주는 방식입니다.
Spring Boot Features에 들어가 보면, 스프링 부트에서 정적 컨텐츠를 /static 디렉토리에서 불러온다고 적혀 있습니다.

그렇다면, 직접 확인을 해보기 위해 /static폴더에 hello-static.html파일을 생성해주고

정적 페이지임을 알려주는 간단한 html코드를 작성을 해보았습니다.

프로젝트를 실행하고 다음과 같은 주소로 들어가 줍니다.
hello-static.html이 화면에 출력되는 모습을 볼 수 있습니다.
이렇게 정적 컨텐츠는 /static폴더에서 요청한 html파일을 가져와 그대로 브라우저에 보여줍니다.
대신 프로그래밍을 할 수는 없고, html파일만 볼 수 있습니다.
이제 동작 원리를 살펴보겠습니다.

웹에서 localhost:8080/hello-static.html을 요청하면 내장되어있는 톰캣서버가 요청을 받고, 스프링 컨테이너에게 전달합니다.
그러면 먼저 컨트롤러에서 hello-static이 있는지 확인을 합니다.
그 이유는 컨트롤러가 우선순위를 가지고 있기 때문입니다.
만약,hello-static과 맵핑이 되어있는 컨트롤러를 찾지 못하면 /static에서 hello-static이 있는지 확인을 한 후, 브라우저에게 전달을 해주게 됩니다.