[freemarker] Freemarker에서 null 값 처리

nullFreemarker에서 값 을 처리하는 방법은 무엇입니까? null데이터에 값이 있을 때 템플릿에서 몇 가지 예외가 발생 합니다.



답변

??테스트 연산자를 사용할 수 있습니다 .

이것은 객체의 속성이 null이 아닌지 확인합니다.

<#if object.attribute??></#if>

이것은 객체 또는 속성이 null이 아닌지 확인합니다.

<#if (object.attribute)??></#if>

출처 : FreeMarker 매뉴얼


답변

freemarker 2.3.7부터 다음 구문을 사용할 수 있습니다 .

${(object.attribute)!}

또는 속성이 null다음과 같을 때 기본 텍스트를 표시하려는 경우 :

${(object.attribute)!"default text"}


답변

다른 방식으로 작동한다고 생각합니다

<#if object.attribute??>
   Do whatever you want....
</#if>

object.attributeNULL이 아닌 경우 내용이 인쇄됩니다.


답변

진술 ??끝에 연산자를 사용하십시오 <#if>.

이 예제 null는 Freemaker 템플릿에서 두 목록의 값 을 처리하는 방법을 보여줍니다 .

List of cars:
<#if cars??>
    <#list cars as car>${car.owner};</#list>
</#if>
List of motocycles:
<#if motocycles??>
    <#list motocycles as motocycle>${motocycle.owner};</#list>
</#if>


답변

선택 사항으로 변환 할 변수가 많은 경우 SubimeText를 다음과 함께 사용할 수 있습니다.

Find: \${([A-Za-z_0-9]*)}
Replace: \$\{${1}!\}

정규식 및 대소 문자 구분 옵션이 활성화되어 있는지 확인하십시오.

숭고한 정규식 교체


답변