论坛首页 编程语言技术论坛

【飞天奔月出品】velocity 判断 变量 是否不是空或empty

浏览 1410 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2013-03-06  

 

 原先的 #if($mobile) 这种写法是不准确的 ,请换成 "$!{ mobile}"!=""
说明 :    #if($mobile)   这种写法 只能 对null 起作用
 
也就是说 
#if($mobile) 
  or receiver_mobile =:mobile
  #end
 
如果 mobile 参数 是 null, 那么sql 不会拼接 里面的文字
但是 ,如果 传入的 是 ""( empty 字符串), 一样会拼接文字
(注:当然你可以在 manager类里面 将 "" 先转成null,不怕麻烦的话 )
 
如果 既要 判断 null 又要判断 empty ,怎么做呢?
应该这么写:
   #if("$!{mobile}"!="")
   or receiver_mobile =:mobile
   #end
其中   $!{mobile}  是VTL 的 (安静引用符Quiet Reference Notation)
 
官方文档这么描述的:  
如果 mobile 变量为null,或者未赋值,  直接使用${mobile}的话,  界面会显示这个变量名称 ,即(${mobile})
而 用 $!{mobile}, 则显示 空白文本
 
这里 wiki ,值得大家看看 

 

论坛首页 编程语言技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics