Thymeleaf는 Spring 프레임워크와 함께 많이 사용되는 템플릿 엔진입니다. HTML 파일에서 서버 측 데이터를 표시하고 조작하는 데 사용되는 다양한 문법과 표현식이 있습니다. 주요 Thymeleaf 문법을 살펴보겠습니다:
1. 표준 표현식:
- 변수 표현식: ${...}
- 예: <span th:text="${user.name}">Name</span>
- 선택 변수 표현식: *{...}
- 예: <div th:object="${user}"><p th:text="*{name}">Name</p></div>
- 메시지 표현식: #{...}
- 예: <span th:text="#{message.key}">Default message</span>
- 링크 URL 표현식: @{...}
- 예: <a th:href="@{/login}">Login</a>
- 조각 표현식: ~{...}
- 예: <div th:replace="fragments/header :: header"></div>
2. 리터럴(고정된 값):
- 텍스트 리터럴: 'one text', 'Another one!', …
- 숫자 리터럴: 0, 34, 3.0, 12.3, …
- 부울 리터럴: true, false
- 널 리터럴: null
- 리터럴 토큰: one, sometext, main, …
3. 텍스트 연산:
- 문자열 합치기: +
- 리터럴 대체: |The name is ${name}|
4. 수학 연산:
- Binary operators: +, -, *, /, %
- Minus sign (as an unary operator): -
5. 부울 연산:
- Binary operators: and, or
- Boolean negation (unary operator): !, not
6. 비교와 동등:
- 비교: >, <, >=, <= (gt, lt, ge, le)
- 동등: ==, != (eq, ne)
7. 조건 연산:
- If-then: (if) ? (then)
- If-then-else: (if) ? (then) : (else)
- Default: (value) ?: (defaultvalue)
8. 특수 토큰:
- No-Operation: _
9. 반복 및 조건부 평가:
- For 반복문: th:each="item : ${items}"
- If 조건문: th:if="${condition}"
- Unless 조건문: th:unless="${condition}"
- Switch 문: th:switch="${condition}", th:case="caseValue"
10. 레이아웃 기능:
- 템플릿 포함: th:include="~{templateName}"
- 템플릿 대체: th:replace="~{templateName}"
Thymeleaf는 HTML에 자연스럽게 통합되어 있기 때문에, 개발 중인 애플리케이션이 서버 측에서 처리되지 않을 때도 웹 브라우저에서 HTML을 그대로 볼 수 있습니다. 이는 프론트엔드 개발과 백엔드 개발 간의 협업을 용이하게 합니다.
'BACKEND > 스프링 Spring' 카테고리의 다른 글
Spring MVC 스프링 세션 로그인, 로그아웃 (0) | 2023.12.19 |
---|---|
Spring Handler Interceptor (0) | 2023.12.19 |
뷰 템플릿 호출 3가지 방법 (0) | 2023.12.17 |
Spring MVC 패턴 구조 (0) | 2023.12.17 |
root-context.xml , web.xml , dispatcher-servlet.xml , pom.xml 설정 이유 (0) | 2023.12.17 |