본문 바로가기
JAVA(자바)

타임리프 기본 문법

by janeparker 2022. 10. 26.
728x90
반응형

타임리프 기본 기능

타임리프를 사용하려면 다음 선언을 하면 된다.

 

타임리프 사용 선언

<html lang="ko" xmlns:th="http://www.thymeleaf.org">
 

 

기본 표현식

타임리프는 다음과 같은 기본 표현식들을 제공한다.

지금부터 하나씩 알아보자.

 

• 간단한 표현:

◦ 변수 표현식: ${...}

◦ 선택 변수 표현식: *{...}

◦ 메시지 표현식: #{...}

◦ 링크 URL 표현식: @{...}

◦ 조각 표현식: ~{...}

 

• 리터럴

 

◦ 텍스트: 'one text', 'Another one!',…

◦ 숫자: 0, 34, 3.0, 12.3,…

◦ 불린: true, false

◦ 널: null

◦ 리터럴 토큰: one, sometext, main,…

 

• 문자 연산:

 

◦ 문자 합치기: +

◦ 리터럴 대체: |The name is ${name}|

 

• 산술 연산:

 

◦ Binary operators: +, -, *, /, % ◦ Minus sign (unary operator): -

 

• 불린 연산:

 

◦ Binary operators: and, or

◦ Boolean negation (unary operator): !, not

 

• 비교와 동등:

 

◦ 비교: >, <, >=, <= (gt, lt, ge, le)

◦ 동등 연산: ==, != (eq, ne)

 

• 조건 연산:

◦ If-then: (if) ? (then)

◦ If-then-else: (if) ? (then) : (else)

◦ Default: (value) ?: (defaultvalue)

 

• 특별한 토큰:

◦ No-Operation: _

 

참고: https://www.thymeleaf.org/doc/tutorials/3.0/usingthymeleaf.html#standard-expression-syntax

 

텍스트

- text, utext 타임리프의 가장 기본 기능인 텍스트를 출력하는 기능 먼저 알아보자.

 

타임리프는 기본적으로 HTML 테그의 속성에 기능을 정의해서 동작한다.

HTML의 콘텐츠(content)에 데이터를 출력할 때는 다음과 같이 th:text 를 사용하면 된다.

<span th:text="${data}">

 

 

HTML 테그의 속성이 아니라 HTML 콘텐츠 영역안에서 직접 데이터를 출력하고 싶으면 다음과 같이

[[...]] 를 사용하면 된다.

🌙컨텐츠 안에서 직접 출력하기 = [[${data}]

 

 

예제

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
 <meta charset="UTF-8">
 <title>Title</title>
</head>
<body>
<h1>컨텐츠에 데이터 출력하기</h1>
<ul>
 <li>th:text 사용 <span th:text="${data}"></span></li>
 <li>컨텐츠 안에서 직접 출력하기 = [[${data}]]</li>
</ul>
</body>
</html>
728x90
반응형