IT Share you

값이 null 일 때 Thymeleaf 사용

shareyou 2020. 12. 9. 21:58
반응형

값이 null 일 때 Thymeleaf 사용


내 데이터베이스에 아직 입력하지 않은 경우 null이 될 수있는 값이 있습니다.

그러나 HTML에서 Thymeleaf를 사용하면 null 값을 구문 분석 할 때 오류가 발생합니다.

이것을 처리 할 방법이 있습니까?


가장 짧은 방법은 '?'를 사용하는 것입니다. 운영자. 주소 엔터티의 필드에 액세스하고 주소가 null이 아닌 경우 인쇄하기 위해 포함 된 주소 엔터티가있는 사용자 엔터티가있는 경우, 그렇지 않으면 여기에 빈 열이 있습니다.

<td th:text="${user?.address?.city}"></td>

물론입니다. 예를 들어 조건식을 사용할 수 있습니다 . 예를 들면 :

<span th:text="${someObject.someProperty != null} ? ${someObject.someProperty} : 'null value!'">someValue</span>

"else"표현식을 생략 할 수도 있습니다.

<span th:text="${someObject.someProperty != null} ? ${someObject.someProperty}">someValue</span>

Elvis 연산자살펴보고 기본값을 표시 할 수도 있습니다 .


'th : if'와 'th : text'를 함께 사용할 수 있습니다.

<span th:if="${someObject.someProperty != null}" th:text="${someObject.someProperty}">someValue</span>

필드가 null 일 때 기본값을 추가하는 elvis 연산자 ?:사용하여 처리 할 수도 있습니다 .

<span th:text="${object.property} ?: 'default value'"></span>

당신이 만들 때 두 번 확인했습니다

${someObject.someProperty != null} ? ${someObject.someProperty}

아래와 같이 깔끔하고 간단하게해야합니다.

<td th:text="${someObject.someProperty} ? ${someObject.someProperty} : 'null value!'"></td>

   <p data-th-text ="${#strings.defaultString(yourNullable,'defaultValueIfYourValueIsNull')}"></p>

#objects 빌트인 도우미에 대한 문서도 살펴볼 가치가 있습니다 : https://www.thymeleaf.org/doc/tutorials/2.1/usingthymeleaf.html#objects

유용합니다 : ${#objects.nullSafe(obj, default)}


나는 사용한다

<div th:text ="${variable != null} ? (${variable != ''} ? ${variable} : 'empty string message') : 'null message' "></div>

이 솔루션을 사용할 수 있습니다.

<span th:text="${#objects.nullSafe(doctor?.cabinet?.name,'')}"></span>

참고 URL : https://stackoverflow.com/questions/20636456/using-thymeleaf-when-the-value-is-null

반응형