Spring - Thymeleaf

iseon_u·2022년 5월 21일
0

Spring

목록 보기
6/33
post-thumbnail

Thymeleaf


Thymeleaf 기본 문법

  • HTML 태그 안에 th 문법 사용

Thymeleaf 기본 표현식

  • 변수 : ${…}
  • 선택자 : *{…}
  • 메시지 : #{…}
  • 링크 URL : @{…}
  • 부분적 표현 : ~{…}
  • 조건 연산자 : and or not !
  • 텍스트 결합 : ${…} + ${…}
  • 문장 결합 : | ${…} ABC ${…} |
  • if-then : ${…} ? ‘ABC’
  • if-then-else : ${…} ? ‘ABC’ : ‘DEF’

th:text

  • 태그 안의 텍스트를 서버에서 전달 받은 값에 따라 표현
<span th:text="${hello}">message</span>

th:utext

  • 변수에서 받은 값에 HTML 태그가 있다면 적용 반영
<span th:utext="${hello}">message</span>

th:value

  • Element 들의 value 값을 지정
<button th:value="${hello}"/>

th:with

  • 변수 값을 지정해서 사용
<div th:with="temp=${hello}"th:text="${temp}">

th:switch

  • switch-case 문이 필요할 때 사용
  • th:case 에서 case 문을 다룬다.
  • case 값이 * 면 다루지 않은 모든 경우가 처리된다.
<div th:switch="${hello}">
    <p th:case="'admin'">관리자
    <p th:case="#{roles.manager}">매니저
    <p th:case="*">일반
</div>

th:if

  • 조건문이 필요할 때 사용
  • else 문은 th:unless 사용 - 조건식 동일하게 적용
<p th:if="${hello}=='web'" th:text="${hello}"></p>
<p th:unless="${hello}=='web'"></p>

th:each

  • 반복문이 필요할 때 사용
  • List 같은 collection 객체에 맞춰 반복적인 작업을 할 때 사용

“객체 변수명 : 리스트 변수 명” “객체명.객체 내 지역 변수 명”

public class Member{
		private String name;
		private int age;
}
//-----
@GetMapping("/member")
public String Thymeleaf(Member member) {
		List<Member> memberList = new ArrayList<Member>();
		memberList.add(member);
		return "list";
}
<!-- list.html -->
<table>
		<tr>
		<th>Name</th>
		<th>Age</th>
		</tr>
		<tr th:each="member:${memberList}">
				<td th:text="${member.name}"></td>
				<td th:text="${member.age}"></td>
		</tr>
</table>
profile
🧑🏻‍💻 Hello World!

0개의 댓글