XML, XHTML 그리고 HTML5 를 위한 자바 템플릿 엔진이다. 다른 템플릿 포맷으로 확장이 가능하다.웹과 오프라인 양쪽 환경에서 동작, 서블릿 API에 대한 강한 의존성이 없다.다이얼렉트(dialect)라고 불리는 기능 셋 모듈을 기반으로 한다.
이스케이프한 값을 표시한다.요청 http://localhost:8080/ch0802/home0101컨트롤러 메서드 \\src\\main\\java\\org.brolab.thymeleaf\\Ch0802_Controller.java뷰 파일\\src\\main\\r
th:text 속성이나 th:utext 속성을 사용하여 스프링 MVC 모델에 저장된 값 또는 프로퍼티 파일에서 가져온 메시지를 표시한다.메시지 본문을 메시지의 키 값으로 가져 오려는 경우에 메시지 표현식을 사용한다.메시지의 키 값을 사용하여 메시지 본문을 가져 온다.요
타임 리프는 HTML5 및 XHTML에서 사용되는 일반적인 속성에 대한 전용 속성을 제공한다.href 속성에 th:href 전용 속성을 제공한다.요청 http://localhost:8080/ch0804/home0101컨트롤러 메서드뷰 파일응답 화면 action
HTML 요소의 표시를 제어해야 하는 경우가 있는데 타임리프에서는 이런 기능을 th 속성으로 제공된다.속성 값이 참인 경우에만 대상이 되는 HTML 요소를 표시한다.참과 거짓 판단 기준null 인 경우는 거짓숫자 타입에서 0이 아닌 값이면 참, 그렇지 않은 경우는 거짓
타임리프 태그 속성을 사용하여 거의 모든 것을 처리 할 수 있지만 HTML 텍스트에 직접 표현을 쓰는 것이 더 좋을 수도 있다. 인라인 표기법을 사용하면 HTML 텍스트를 직접 표현할 수 있다.인라인 표기법은 \[...] 또는 (...) 형태로 표현된다.\[...]는
일반적인 HTML 처럼 <!-- 와 --> 사이의 구문을 주석으로 처리한다.타임리프 처리 후에도 템플릿에 남아 있다.요청 http://localhost:8080/ch0807/home0101컨트롤러 메서드뷰 파일응답 화면 <!-- / 와 /-->
여러 템플릿을 작성할 때 공통적인 내용을 별도 파일로 추출하여 효율적으로 사용할 수 있게 해주는 기능이다.th:fragment 속성을 이용하여 공통적으로 사용할 부분을 프래그먼트로 정의한다.헤더 프레그먼트푸터 프래그먼트정의한 프래그먼트를 참조해서 템플릿에 불러온다.th
타임리프 레이아웃 다이얼렉트를 이용하여 레이아웃을 재사용할 수 있다.의존관계 정의공통 레이아웃이 되는 템플릿을 'Decorator' 라고 한다.main_template.html대체하고 싶은 요소에 layout:fragment 속성을 부여한다.요청 http://
유틸리티 객체는 기존처럼 메서드를 호출하는 방식으로 사용할 수 있는 객체들이다.숫자에 대한 포매팅을 처리할 때 주로 사용된다.요청 http://localhost:8080/ch0810/home0101컨트롤러 메서드뷰 파일응답 화면컬렉션 없이 단순 반복 처리를 하