동적 페이지 처리를 위한 템플릿 엔진
/resources/templates
로 설정@GetMapping("/static-hello")
public String hello() {
return "hello.html";
}
/static
에서 찾아서 반환해준다.thymeleaf
템플릿 엔진을 적용하지 않은 상태여야 함@GetMapping("/html/redirect")
public String htmlStatic() {
return "redirect:/hello.html";
}
thymeleaf
템플릿 엔진을 적용한 상태에서 static 폴더의 html 파일을 Controller를 통해 처리하고 싶은 경우"redirect:/hello.html"
redirect 요청을 문자열로 반환하면 http://localhost:8080/hello.html 요청이 재수행되면서 static 폴더의 파일 반환 가능@GetMapping("/html/templates")
public String htmlTemplates() {
return "hello";
}
"hello"
문자열을 반환하여 처리 가능 (.html은 생략가능)private static long visitCount = 0;
...
@GetMapping("/html/dynamic")
public String htmlDynamic(Model model) {
visitCount++;
model.addAttribute("visits", visitCount); //"visits"는 html에서 사용할 변수명
return "hello-visit";
}
<div>
(방문자 수: <span th:text="${**visits**}"></span>)
</div>