728x90
Thymeleaf
스프링 프레임워크에서 Thymeleaf를 사용하는 방법은 HTML 기반의 뷰 템플릿을 만들고, 서버에서 데이터를 전달하여 동적으로 렌더링하는 데 있습니다. Thymeleaf는 스프링과 함께 사용되어 서버 측에서 데이터를 효과적으로 렌더링하고 동적인 웹 페이지를 생성하는데 활용되며 Thymeleaf를 이용하여 유연하게 작성 가능합니다.
Thymeleaf특징
- HTML 문서의 구조를 유지하면서 템플릿을 작성할 수 있습니다.
- HTML 태그 안에 표현식을 사용하여 동적으로 데이터를 표시, 조작이 가능합니다.
- 템플릿을 재사용하고 여러 페이지에서 중복 코드 줄이는 데 도움이 됩니다.
Thymeleaf 사용방법
의존성 추가
먼저 Maven이나 Gradle과 같은 빌드 도구를 사용하여 프로젝트에 Thymeleaf 라이브러리 의존성을 추가해야 합니다.
Gradle
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
}
Maven
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
스프링 설정
스프링 설정 파일에서 Thymeleaf 템플릿 엔진을 설정합니다. Spring Boot를 사용하는 경우 별도의 설정 없이 자동으로 설정될 수 있습니다.
컨트롤러에서 데이터 전달값
컨트롤러에서 데이터를 뷰로 전달하는 역할을 합니다. 모델 객체를 이용하여 데이터를 담고, 해당 데이터를 뷰에 전달합니다.
@Controller
public class MyController {
@GetMapping("/hello")
public String hello(Model model) {
model.addAttribute("message", "Hello, Thymeleaf!");
return "hello"; // hello.html 템플릿을 렌더링
}
}
Thymeleaf 템플릿 사용
Thymelaf 템플릿은 HTML 파일 내에서 Thymeleaf의 문법을 사용하여 데이터를 렌더링 합니다.
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<title>Thymeleaf Example</title>
</head>
<body>
<h1>Welcome to Thymeleaf</h1>
<p th:text="${message}"></p>
</body>
</html>
위 코드 th:text 부분은 서버 전달된 message 데이터를 해당위치에 동적으로 삽입하여 표시하는 부분입니다.
Thymeleaf 문법
728x90
'Spring(Boot & FrameWork)' 카테고리의 다른 글
서블릿 컨테이너 (0) | 2023.11.20 |
---|---|
지연 로딩 & 즉시 로딩 (0) | 2023.11.15 |
@Entity와 @Table의 차이 (0) | 2023.11.14 |