html thymeleaf 예제
Thymeleaf는 HTML 템플릿 엔진으로서, 서버 측에서 동적으로 HTML을 생성하고 표현하는 데 사용됩니다. 이 예제에서는 Thymeleaf를 사용하여 HTML 페이지에 데이터를 바인딩하는 방법을 보여줍니다.
의존성 추가
먼저, 프로젝트에 Thymeleaf 의존성을 추가해야 합니다. Maven을 사용하는 경우 pom.xml
파일에 다음과 같이 의존성을 추가합니다:
<dependencies>
<!-- Thymeleaf 의존성 추가 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
</dependencies>
Gradle을 사용하는 경우 build.gradle
파일에 다음과 같이 의존성을 추가합니다:
dependencies {
// Thymeleaf 의존성 추가
implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
}
HTML 템플릿 작성
다음은 Thymeleaf를 사용하여 데이터를 바인딩하는 예제 HTML 템플릿입니다. Thymeleaf 태그와 속성은 th:
접두사로 시작합니다.
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<title>Thymeleaf 예제</title>
</head>
<body>
<h1 th:text="${title}">기본 제목</h1>
<p th:text="'안녕하세요, ' + ${name} + '님!'">인사말</p>
</body>
</html>
위의 예제는 <h1>
요소의 텍스트를 ${title}
변수의 값으로 대체하고, <p>
요소의 텍스트를 '안녕하세요, ' + ${name} + '님!'
표현식의 결과로 대체합니다.
컨트롤러 작성
Thymeleaf를 사용하여 데이터를 전송하기 위해 컨트롤러를 작성해야 합니다. 다음은 Spring Boot에서 Thymeleaf 컨트롤러를 작성하는 예제입니다:
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
@Controller
public class MyController {
@GetMapping("/")
public String myMethod(Model model) {
model.addAttribute("title", "Thymeleaf 예제");
model.addAttribute("name", "사용자 이름");
return "example";
}
}
위의 예제에서는 myMethod
라는 메서드가 @GetMapping("/")
어노테이션에 의해 “/” 경로로 매핑됩니다. Model
객체를 사용하여 데이터를 전달하고, “example”이라는 문자열을 리턴하여 example.html
템플릿을 렌더링합니다.
위의 예제 코드를 프로젝트에 추가하면 Thymeleaf를 사용하여 HTML 템플릿에 데이터를 바인딩하는 예제를 구현할 수 있습니다.
#Thymeleaf #HTML