둘셋 개발!

타임리프의 기본 표현식 본문

SPRING/Thymeleaf

타임리프의 기본 표현식

23 2021. 10. 31. 17:42

텍스트 - text, utext

 - th:text = "${data}" 이런 식으로 사용하면 됨

 - html 테그 속성이 아니라 컨텐츠 안에서 직접 데이터를 출력하고자 할 때:  [[${data}]]

 

 

-html엔티티

 : 만약 <b>를 테그가 아닌 문자 그대로 출력하고자 할 때 html엔티티를 사용

    ex) < : &lt;

         >: &gt; 

 : 특수 문자를 html엔티티로 변경하는 것을 escape라고 함

 : 기본으로 th:text와 [[...]]는 escape를 적용

 : unescape를 하고 싶을 때는

         th:untext

         [(...)]

 


변수 - SpringEL

- 타임리프에서 변수를 사용하고자 할 때는 ${...} 을 사용

 

-Object

     변수.속성                       ----${user.username}

     변수['속성']                    ----${user['username']}

     변수.get속성()                 ----${user.getUsername()}

 

-List

   리스트[0].속성                   ----${users[0].username}

   리스트[0]['속성']                 ----${users[0]['username']}

   리스트[0].get속성()             ----${users[0].getUsername()}

 

-Map

   맵['key값'].속성                  ----${map['userA'].username}

   맵['key값']['속성']                ----${map['userA']['username']}

   맵['key값'].get속성()            -----${map['userA'].getUsername()}

 

-지역변수 선언

  th:with 사용

  ex) th:with="first=${user}"

 


 

기본 객체들

-타임리프는 기본 객체들을 제공한다

  ${#request}

  ${#response}

  ${#session}

  ${#servletContext}

  ${#locale}

 

-편의 객체도 제공한다

  •   HTTP 요청 파라미터 접근 : param        ex) ${param.paramData}
  •   HTTP 세션 접근             : session       ex) ${session.sessionData}
  •   스프링 빈 접근               : @             ex) ${@helloBean.hello('Spring!')}

날짜  

#temporals 는 자바8 날짜용 유틸리티 객체이다

 

ex)  <span th:text="${temporals.format(localDateTime, 'yyyy-MM-dd HH:mm:ss')}"></span>

 


 

URL 링크

@{...} 문법을 사용하면 된다

 

  • 단순한 url :           @{/hello} -> /hello
  • 쿼리 파라미터:       @{/hello(param1=${param1}, param2=${param2})} ->/hello?param1=data1&param2=data2   

                              -> () 에 있는 부분은 쿼리 파라미터로 처리됨

  • 경로변수:              @{/hello/{param1}/{param2}(param1=${param1, param2=${param2}})}

                              -> URL에 경로변수가 있으면 ()부분은 경로변수로 처리

 

  + 경로변수와 쿼리 파라미터를 같이 사용할 수 있음 -> ()부분에 해당 경로변수가 없으면 쿼리 파라미터로 처리

 

 

 

   

'SPRING > Thymeleaf' 카테고리의 다른 글

타임리프란 특징  (0) 2021.10.31