[Thymeleaf] 타임리프 정의 및 사용 방법
2024. 1. 4. 22:23ㆍSpringBoot+JPA/Thymeleaf
반응형
Thymeleaf 정의
자바 기반의 템플릿 엔진 (서버 사이드 Java 템플릿 엔진)
주로 웹 애플리케이션에서 서버 사이드 템플릿 엔진으로 사용
다양한 속성을 사용하여 HTML 템플릿에서 동적으로 데이터를 표현하고 조작 가능
타임리프는 자연스럽게 HTML 문서 안에 삽입되어 읽기 쉽고 유지보수가 용이하도록 설계되었음
Thymeleaf 사용방법
문서 최상단에 코드 추가
<html xmlns:th="http://www.thymeleaf.org">
▪️ th:value
주로 폼 요소에서 사용
사용자가 입력한 값을 서버로 제출할 때 이 값을 설정하거나, 서버에서 받은 값을 폼 요소에 미리 설정할 때 사용
(insert, update)
<input type="text" th:value="${user.name}" />
▪️ th:field
폼 요소의 필드를 설정
폼 요소에 값을 바인딩할 때 사용
폼 요소의 name과 id 속성을 설정하면서, 폼 요소의 값도 동시에 설정
<input type="text" th:field="*{user.name}" />
▪️ th:text
텍스트 콘텐츠를 설정
HTML 요소의 텍스트 내용을 동적으로 설정
서버에서 받은 데이터를 화면에 표시할 때 주로 사용
(list)
<p th:text="${user.description}">Default description</p>
▪️ th:each
리스트나 배열과 같은 반복 가능한 객체를 순회
각 요소에 대한 작업을 수행할 때 사용
<ul>
<li th:each="item : ${items}" th:text="${item}">Item</li>
</ul>
▪️ th:if / th:unless
조건문을 통해 특정 조건에 따라 요소를 화면에 표시하거나 숨길 때 사용
<p th:if="${user.isAdmin}">This user is an admin.</p>
▪️ $object (객체 읽어서) → *{ 변수 } => field 사용
▪️ 객체를 사용하지 않으면 ${객체명, 변수} => value, text, [[ ]]
반응형
'SpringBoot+JPA > Thymeleaf' 카테고리의 다른 글
[Thymeleaf] 객체나 변수 간의 비교 / 동등 연산자 (0) | 2024.01.05 |
---|---|
[Thymeleaf] 타임리프에서 사용되는 다양한 문법 요소 (1) | 2024.01.05 |