본문 바로가기
Thymeleaf

17. Thymeleaf와 Spring Framework의 통합 - 2

by leo2114 2024. 2. 24.
반응형

컨트롤러와 Thymeleaf의 연동

Spring Boot 애플리케이션에서 컨트롤러와 Thymeleaf를 연동하여 동적 웹 페이지를 생성하는 방법에 대해 알아보겠습니다.

1. 컨트롤러 작성

먼저, 컨트롤러 클래스를 작성하여 웹 요청을 처리하고 필요한 데이터를 모델에 추가합니다. 예를 들어, 다음과 같은 컨트롤러를 작성할 수 있습니다.

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;

@Controller
public class MyController {

    @GetMapping("/hello")
    public String hello(Model model) {
        model.addAttribute("message", "Hello, World!");
        return "hello"; // hello.html 템플릿으로 렌더링
    }
}

 

위의 코드에서 /hello 경로로 GET 요청이 들어오면 hello() 메서드가 호출되고, "message" 속성을 모델에 추가한 후 "hello" 템플릿을 렌더링합니다.

2. Thymeleaf 템플릿 작성

src/main/resources/templates 폴더에 Thymeleaf 템플릿 파일을 생성합니다. 예를 들어, hello.html 파일을 다음과 같이 작성할 수 있습니다.

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <title>Spring Boot Thymeleaf Example</title>
</head>
<body>
    <h1 th:text="${message}"></h1>
</body>
</html>

 

위의 코드에서 ${message}는 컨트롤러에서 모델에 추가한 "message" 속성의 값을 표시합니다.

3. 실행

애플리케이션을 실행하고 웹 브라우저에서 http://localhost:8080/hello로 접속하여 확인합니다. 컨트롤러에서 추가한 메시지가 표시되는 것을 확인할 수 있습니다.

4. 요약

이렇게하면 Spring Boot 애플리케이션에서 컨트롤러와 Thymeleaf를 연동하여 동적인 웹 페이지를 생성할 수 있습니다. 컨트롤러에서 데이터를 모델에 추가하고 Thymeleaf 템플릿에서 이 데이터를 사용하여 웹 페이지를 렌더링합니다. 이를 통해 사용자에게 동적인 콘텐츠를 제공할 수 있습니다.

반응형