struts2±êÇ©Óëfreemarker±êÇ©Óï·¨Çø±ð
Ò»¡¢ ȡֵ
1¡¢ Ò»°ãȡֵ
struts2:
${alterOrder.name?if_exists} »ò ${alterOrder.name?default('')} ?if_existsµÄÒâ˼£º±íʾÈç¹ûalterOrder.nameµÄÖµ´æÔÚ¾ÍÏÔʾ¡£ ÀàËÆ if(xxx!=null) { ÏÔʾֵ }
?default('')µÄÒâ˼£º±íʾÈç¹ûalterOrder.nameµÄÖµ´æÔÚ¾ÍÏÔʾ£¬²»´æÔÚÔòÏÔʾ¿Õ×Ö·û´®(defaultÀ¨ºÅÀïµÄÖµ)£¬ÀàËÆ xxx!=null? xxx: ¸ø¸öĬÈÏÖµ
ÖµµÃ×¢ÒâµÄÊÇ£¬ÎªÊ²Ã´Òª¼ÓÉÏ ?if_exists»ò?default('')ÄØ£¿²»¼ÓÒ²ÊÇ¿ÉÒԵģ¬Èç${alterOrder.name}¡£µ«»áÓÐÒ»¸öÒþ»¼£¬µ±alterOrder.name ΪnullµÄʱºò£¬Ò³Ãæ»áÖ±½Ó±¨´í¡£ÕâÒ²ÊÇfreemarker×î´óµÄ²»±ã¡£
È»¶øÕâ²¢²»Ó°ÏìÎÒÃǶÔËüµÄϲ°®£¡ÔÚʹÓõÄʱºò¼Ó¸öÅжÏ?if_exists£¬»òÕ߸ø¸öĬÈÏÖµ?default('ĬÈÏÖµ')¾Í¿ÉÒÔÁË
2¡¢ ÈÕÆÚȡֵ
struts2:
<#if alterOrder.replyDate?exists>${alterOrder.rep lyDate?datetime}#if> ---datetime£º »á¸ñʽ»¯³É yyyy-MM-dd HH:mm:ss £» date£º»á¸ñʽ»¯³É yyyy-MM-dd 3¡¢ Êýֵȡֵ struts2: 4¡¢ mapȡֵ struts2: value='alterTypeDictMap[alterOrder.alterType].name'/> freemarker: <#if alterOrder.alterType?exists>${alterTypeDictMap.get(alterOrder.alterType).name}#if> ---ǰÌáÊÇ alterTypeDictMap¶ÔÏóÒ²´æÔÚ£¬·ñÔòÒªÔÚÍâ±ßifÉ϶à¼ÓÅжÏÌõ¼þ£¬Èç <#if alterOrder.alterType?exists&& alterTypeDictMap?exists>#if> 5¡¢ booleanȡֵ struts2: \ freemarker: true<#else>false#if>\ 6¡¢ ¾²Ì¬³£Á¿¡¢¾²Ì¬·½·¨È¡Öµ struts2: value=\ --¾²Ì¬³£Á¿ value=\\ --¾²Ì¬·½·¨ freemarker: ${stack.findValue('@com.hz.platform.fm.core.consta nt.FlowConstant@STATUS_NO_REPORT')} --¾²Ì¬³£Á¿ ${stack.findValue('@com.hz.platform.sys.syslogin.context.SysLoginContext@getLoginUserName()')} --¾²Ì¬·½·¨ 7¡¢ ÏîÄ¿¸ùĿ¼ strtus2: <%=request.getContextPath()%>/ »ò freemarker: ${request.contextPath}/ ¶þ¡¢ ÅÐ¶Ï 1¡¢ifÅÐ¶Ï strtus2: test=\ //some code... freemarker: <#if alterOrder.approvalResult> //some code... #if> 2¡¢ifÅж϶ÔÏó²»Îª¿Õ strtus2: test=\flowStatus!=null\#if> freemarker: <#if alterOrder.flowStatus?exists> 3¡¢if...elseÅÐ¶Ï strtus2: test=\ //some code... //some code... freemarker: <#if alterOrder.approvalResult> //some code... #if>