Spring(4)

9mond·2023년 9월 25일
0
post-thumbnail

1. 기본 객체들

  • 타임리프는 기본 객체들을 제공한다.
  • ${#request}
  • ${#response}
  • ${#session}
  • ${#servletContext}
  • ${#locale}

2. 연산

  • 비교연산 : HTML 엔티티를 사용해야하는 부분을 주의
    - >(gt), <(lt), >=(ge), <=(le), !(not), ==(eq), !=(neq, ne)

3. 속성 값 설정

  • 타임리프 태그 속성
  • 타임리프는 주로 HTML태그에 th:* 속성을 지정하는 방식으로 동작한다.
  • th.*로 속성을 적용하면 기존 속성을 대체한다.
  • 기존 속성이 없으면 새로 만든다.

4. 반복 상태 유지

  • <tr th:each="user,userStat:${users}">
  • 반복된 두번째 파라미터를 설정해서 반복의 상태를 확인할 수 있다.
  • 지정한 변수명(user) + Stat -> userStat => 생략가능

5. 조건부 평가

  • 타임리프의 조건식 : if, unless(if의 반대)
  • 타임리프는 해당 조건이 맞지 않으면 태그 자체를 렌더링하지 않는다.
  • 해당 조건이 false인 경우 <span>...</span> 부분 자체가 렌더링 되지 않고 사라진다.

6. 주석

6-1. 표준 HTML 주석

  • 자바스크립트의 표준 HTML주석은 타임리프가 렌더링 하지 않고 그대로 남겨둔다.

6-2. 타임리프 파서 주석

  • 타임리프 파서 주석은 타임리프의 진짜 주석이다.
  • 렌더링에서 주석 부분을 제거한다.

6-3. 타임리프 프로토타입 주석

  • 타임리프 프로토타입 주석은 HTML 주석에 약간의 구문을 더했다.
  • HTML 파일을 웹 브라우저에서 그대로 열어보면 HTML 주석이기 때문에 이 부분이 웹 브라우저가 렌더링 하지 않는다.
  • 타임리프의 렌더링을 거치면 이 부분이 정상 렌더링 된다.
  • 즉, HTML 파일을 그대로 열어보면 주석 처리가 되지만, 타임리프를 렌더링 한 경우에만 보이는 기능이다.

7. 블록

  • HTML 태그가 아닌 타임리프의 유일한 자체 태그이다.
  • <th:block>
  • 사용빈도가 높지는 않고 어쩔 수 없이 사용될 때가 있다.
profile
개발자

0개의 댓글

관련 채용 정보