오봉이와 함께하는 개발 블로그
스프링 MVC 2 - 타임리프 연산 본문
728x90
연산
타임리프 연산은 자바와 크게 다르지 않다.
HTML안에서 사용하기 때문에 HTML 엔티티를 사용하는 부분만 주의하자.
코드 추가, 결과
@GetMapping("/operation")
public String operation(Model model) {
model.addAttribute("nullData", null);
model.addAttribute("data", "Spring!");
return "basic/operation";
}
~~html
- 산술 연산
- 10 + 2 =
- 10 % 2 == 0 =
- 비교 연산
- 1 > 10 =
- 1 gt 10 =
- 1 >= 10 =
- 1 ge 10 =
- 1 == 1 =
- 1 != 1 =
- 조건식
- (10 % 2 == 0)? '짝수':'홀수' =
- Elvis 연산자
- ${data}?: '데이터가 없습니다.' =
- ${nullData}?: '데이터가 없습니다.' =
- No-Operation
- ${data}?: _ = 데이터가 없습니다.
- ${nullData}?: _ = 데이터가 없습니다.
산술 연산
10 + 2 = 12
10 % 2 == 0 = true
비교 연산
1 > 10 = false
1 gt 10 = false
1 >= 10 = false
1 ge 10 = false
1 == 1 = false
1 != 1 = true
조건식
(10 % 2 == 0)? '짝수':'홀수' = 짝수
Elvis 연산자
${data}?: '데이터가 없습니다.' = Spring!
${nullData}?: '데이터가 없습니다.' = 데이터가 없습니다.
No-Operation
${data}?: _ = Spring!
${nullData}?: _ = 데이터가 없습니다.
설명
비교연산 : HTML 엔티티를 사용해야 하는 부분을 주의
-> >
(gt), <
(lt), >=
(ge), <=
(le), !
(not), ==
(eq), !=
(neq, ne)
조건식 : 자바의 조건식과 유사하다
-> <span th:text="(10 % 2 == 0)? '짝수':'홀수'">
조건이 참이면 왼쪽, 거짓이면 오른쪽
Elvis 연산자 : 조건식의 편의 버전
-> <span th:text="${data}?: '데이터가 없습니다.'"></span>
에서 ${data}
에 값이 있으면 해당 값이 출력되고, 없으면 :
(콜론) 옆에 있는 값이 출력된다.
No-Operation : _
인 경우 마치 타임리프가 실행되지 않는 것 처럼 동작한다.
-> <span th:text="${nullData}?: _">데이터가 없습니다.</span>
에서 ${nullData}
에 값이 있으면 해당 값이 출력되지만 값이 없다면 HTML 태그 안에 있는 것이 출력된다.
-> 즉 아무 것도 하지 않는 효과를 낸다.
-> 잘 활용하면 HTML의 내용을 그대로 활용할 수 있다.
출처 : 인프런 김영한 지식공유자님 강의 스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
728x90
'BE > Thymeleaf' 카테고리의 다른 글
스프링 MVC 2 - 타임리프 반복문 (0) | 2022.08.17 |
---|---|
스프링 MVC 2 - 타임리프 속성 값 설정 (0) | 2022.08.16 |
스프링 MVC 2 - literal(리터럴) (0) | 2022.08.16 |
스프링 MVC 2 - 타임리프 URL (0) | 2022.08.16 |
스프링 MVC 2 - 기본 객체, 유틸리티 객체와 날짜 (0) | 2022.08.16 |
Comments