SpringBoot , Thymeleaf
Thymeleaf 기본 정리
수동애비
2022. 3. 18. 10:18
반응형
// 태그에 조건에 따른 표출 설정
th:if="${조건식}"
// 태그에 클래스 추가
th:classappend="${조건? 'true일 경우 클래스' : 'false일 경우 클래스'}"
// 태그 안에 내용 넣기 (innerHtml 같은 역할이지만 태그를 escape 처리하여 그대로 출력된다.)
th:text="| 텍스트내용 ${변수} |"
// 태그 안에 내용 넣기 (태그를 escape 처리하지 않아 태그 입력 시 태그가 동작한다.)
th:utext="| 텍스트내용 ${변수} |"
// a 태그에 href 추가
th:href="@{/경로}"
// 태그에 속성을 추가 (아래 예제는 태그에 id="fname123" 과 같은 id 속성을 추가)
// 같은 방식으로 onclick 같은 이벤트도 추가 가능함.
th:attr="id=|fname${row.getPKey()}|"
// 기존 속성에 속성을 추가할 경우
th:attrappend="id=|fname${row.getPKey()}|"
// 반복문 처리
<tr th:each="idx : ${#numbers.sequence(1, 10)}">
<td th:text="${idx}"></td>
</tr>
// 대상 문자열이 null 일 경우 기본값 대체 (대상 값이 null 일 경우 공백으로 대체)
th:text="${#strings.defaultString(대상값, '')}"
// 테이블 <tr> 을 여러개로 반복 해야 할 경우 th:block 을 사용하면 가능
<th:block th:each="item : ${items}">
<tr>
</tr>
.......
<tr>
</tr>
</th:block>
// onclick 이벤트 핸들러 적용
<th:onclick="|location.href='xxx.htm';|">
// 문자열이 유효하지 않을 경우 default 값으로 대체
${#strings.defaultString(str, default)}
// 지정한 문자열이 포함되어 있는지 체크한다
${#strings.contains(str, 'abc')}
// 지정한 문자열로 시작 또는 끝나는지 체크한다
${#strings.startsWith(str,'abc')}
${#strings.endsWith(str,'abc')}
// 문자열의 좌우 공백을 제거한다
${#strings.trim(str)}
// 지정한 숫자를 넘어갈 경우 ... 으로 출력한다
${#strings.abbreviate(str,10)}
// 첫글자만 대문자로 출력한다
${#strings.capitalize(str)}
// 랜덤한 문자열을 count 만큼 생성한다
${#strings.randomAlphanumeric(count)}
// from ~ to 까지 step 간격의 숫자 배열을 생성
${#numbers.sequence(from,to,step)}
// 자리수 마다 , 출력
${#numbers.formatDecimal(num,3,2,'COMMA')}
// 설정한 자리수에 맞춰 앞에 0 을 채운 숫자를 반환
${#numbers.formatInteger(num,3)}
// 현재 시간으로 calendar 객체 생성
${#calendars.createNow()}
// 오늘 날짜로 calendar 객체 생성
${#calendars.createToday()}
// 지정한 년,월,일,시,분,초 로 calendar 객체 생성
${#calendars.create(y,m,d,h,m,second)}
// Javascript 영역에서 th:inline 으로 설정 시 아래와 같이 each 문으로 반복 코드도 생성 가능하다
<script th:inline="javascript">
[# th:each="user, stat : ${users}"]
var user[[${stat.count}]] = [[${user}]];
[/]
</script>