是否有任何更短的方法使用Apache Velocity生成xml元素,如果值为null或为空,则带有带有自闭标签的元素。
但是,可以通过-#if #else #end来实现。
但是我需要一些更短的方法来执行此操作,因为我需要在模板中的多个位置使用它。
#if( $stu.libno )
<libno>$stu.libno</libno>
#else
<libno />
#end
最佳答案
似乎是宏的好用例:
#macro( optionalTag $tagName $value )
#if( $value )
<$tagName>$value</$tagName>
#else
<$tagName/>
#end
#end
您可以在模板的开头或共享的全局宏库文件中进行定义。然后,您可以执行以下操作:
#optionalTag( 'libno', $stu.libno )
关于java - 如果值为null或为空,如何使用Apache Velocity模板生成自关闭XML元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56655055/