`
雪国列车
  • 浏览: 77010 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

velocity判断空和null

阅读更多

判断是否为null有下面几种方法:

     1. #if (! $foo) 判断$foo为空,判断非空为 #if ($foo)

     2. 使用 #ifnull() 或 #ifnotnull()

     #ifnull ($foo)

     要使用这个特性必须在velocity.properties文件中加入:

userdirective = org.apache.velocity.tools.generic.directive.Ifnull
userdirective = org.apache.velocity.tools.generic.directive.Ifnotnull

     3. 使用null工具判断

     #if($null.isNull($foo))

     注意这种方式特别有用,尤其你在需要这个判断作为一个判断字句时,比如我要你判断一个集合为null或为空时只能使用这种方式了:

     $if ($null.isNull($mycoll) || $mycoll.size()==0)

=========================================

1、判断Velocity 是否为null
      方法一   、 #ifnull() 或 #ifnotnull()
     Eg: #ifnull ($XXX)


     Warn:要使用这个特性必须在velocity.properties 文件中加入:
     userdirective = org.apache.velocity.tools.generic.directive.Ifnull
     userdirective = org.apache.velocity.tools.generic.directive.Ifnotnull

      方法二   、$null.isNull()
     Eg:#if($null.isNull())

     推荐使用方法二,特别是在判断集合对象为null时,灰常有用。

2、判断Velocity是否为空

      判断空:#if (! $xxx)
      判断非空: #if ($xxx)

3、更详细的介绍请参考:
      http://wiki.apache.org/velocity/VelocityNullSupport  
      http://wiki.apache.org/velocity/CheckingForNull

分享到:
评论
2 楼 tianxian208 2013-11-08  
描述的很详细,不错
1 楼 tianxian208 2013-11-08  
还可以,功能还行,谢谢

相关推荐

    velocity为空判断

    Velocity是Apache软件基金会的一个开源项目,它是一个模板引擎,用于将HTML、XML或其他类型的文档与数据源结合起来,生成动态内容。...同时,注意区分null和空字符串,根据实际情况进行适当的判断。

    velocity(eclipse插件)

    2. **指令使用**: 常用的Velocity指令包括`#set`(设置变量)、`#if`(条件判断)、`#foreach`(循环)和`#macro`(定义宏)等。 3. **变量引用**: 变量引用通常以`$`开头,例如`$variable`。对于null或不存在的...

    Velocity的脚本语言

    ### Velocity脚本语言详解 #### 一、简介 Velocity是一种基于Java平台的模板...通过本文介绍的基础概念和示例,读者可以更好地理解和运用Velocity脚本语言,从而提高开发效率并创建出更加灵活和易于维护的应用程序。

    Velocity10分钟了解

    ### Velocity 快速入门 #### 一、Velocity 概述 Velocity 是一款基于 Java 的模板引擎,它将...更重要的是,理解 Velocity 如何分离前端设计和后端逻辑,可以帮助开发者更好地组织代码,提高项目可维护性和扩展性。

    Velocity基本标记说明.doc

    msg`会在`msg`变量不存在或者值为`null`时显示为空字符串,而`$msg`会直接显示变量名本身。 6. **#parse()** 和 **#include()**:`#include()`用于包含静态内容,不会解析其中的Velocity指令。而`#parse()`不仅包含...

    velocity教程

    10. **条件语句和循环**:Velocity提供了`#if`、`#else`、`#elseif`来进行条件判断,以及`#foreach`进行循环操作。 11. **宏定义与调用**:`#macro`用于定义宏,而`#invoke`则用来调用已定义的宏,这对于代码复用和...

    velocity模板引擎

    例如,可以使用`#if($null.isNull($orderList.orders) || $orderList.orders.size() == 0)`来判断一个集合是否为空,也可以使用`#if(!$(orderDto))`来判断单个对象是否为空。 #### 四、数值与日期格式化 - **数值与...

    velocity语法

    ` 符号用于指示如果变量不存在或值为null,应显示为空。例如: ```html $!msg ``` ## 2. 在EasyJWeb中的最佳实践 在EasyJWeb框架中,虽然理论上可以使用Velocity的所有功能,但建议尽量保持模板简洁,避免复杂的...

    EasyJWeb-Velocity脚本简明教程

    msg`会在`msg`对象不存在或者值为null时显示为空。 【最佳实践】 在EasyJWeb中,尽管Velocity功能强大,但建议避免在界面模板中使用过于复杂的脚本。模板应保持简洁,以利于页面设计师操作。EasyJWeb提供了一些...

    velocity笔记

    `#if`、`#else`、`#elseif`等指令用于条件判断,`#foreach`用于循环迭代,`#include`用于包含其他模板文件,`#macro`用于定义宏,这些指令共同构建了Velocity的控制流。 在处理属性引用时, Velocity会尝试调用同名...

    velocity模版技术

    `可以插入null值时的默认文本,防止空指针异常。 10. **指令控制**:Velocity提供了丰富的指令,如`#stop`用于终止模板的渲染,`#break`用于跳出循环等。 在实际应用中,Velocity通常与Spring MVC、Struts等Web...

    velocity的语法

    1. **`#`标识符**:`#`用来标记Velocity的指令,如`#set`用于赋值,`#if`、`#else`、`#end`用于条件判断,`#foreach`用于循环,`#include`和`#parse`用于包含其他文件,`#macro`用于定义宏。 ```velocity #if($info...

    velocity简明手册

    9. **条件语句**:`#if()`、`#elseif()`、`#else()`用于条件判断,如果表达式为null或Boolean的false值时,`#if()`会执行其后的代码。 10. **逻辑运算符**:`=`, `&&`, `||`, `!`分别代表等于、逻辑与、逻辑或和...

    velocity 模版 引擎

    `用于强制获取变量的值,即使其为`null`也会输出空字符串而非`null`。 #### 变量引用与属性访问 在Velocity中,变量通过`$`符号进行引用,如`$var`。对于对象的属性访问,可以使用`.`操作符,如`$user.name`,这...

    Velocity基本语法

    var`:如果变量`var`不存在或值为null,将输出为空,防止出现`$var`这样的字样。 在**EasyJWeb**框架中,尽管 Velocity 允许使用复杂的脚本,但推荐保持模板简洁,避免在界面模板中嵌入过多逻辑。以下是EasyJWeb中...

    Velocity基本语法介绍

    总的来说,Velocity的基本语法和在EasyJWeb中的实践提供了强大且灵活的模板渲染能力。通过遵循最佳实践,开发者能够创建清晰、可维护的模板,同时保持良好的代码结构。理解并熟练掌握这些概念是成为高效Velocity模板...

    mvel2.0语法指南.pdf

    MVEL (Micro Velocity) 是一种高效、灵活且易于使用的表达式语言,主要用于处理数据和执行计算任务。MVEL 2.0 版本在继承 Java 语法的基础上进行了大量优化,以提高性能并简化开发流程。本文档旨在详细介绍 MVEL 2.0...

    java面试题(整理)

    4. **Struts能和velocity和用么?** Struts可以通过Velocity模板引擎来生成视图。 5. **Struts的优缺点** - **优点**:良好的架构设计,易于维护。 - **缺点**:配置繁琐,学习曲线较陡峭。 #### 五、...

    JS字符串false转boolean的方法(推荐)

    当处理从后端通过velocity模板引擎传到前端的参数时,可能会遇到一个问题:如果后端忘记传参,前端代码将尝试访问未定义的变量,从而导致语法错误。为了解决这个问题,可以使用单引号将变量括起来,防止因为变量...

    Java+structs快速学习指南

    - **功能**:当指定的变量为空或null时执行标签体内的内容。 - **示例**: ```xml <p>User name is empty. ``` ##### 2. `equal` 标签 - **功能**:判断变量值是否等于指定的值,如果是则执行标签体内的内容...

Global site tag (gtag.js) - Google Analytics