`
xpopi
  • 浏览: 62626 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

freemarker判断返回值是否为空,null的方法

 
阅读更多

对于null,或者miss value,freemarker会报错

!:default value operator,语法结构为:unsafe_expr!default_expr,比如 ${mouse!"No mouse."} 当mouse不存在时,返回default value; 
(product.color)!"red"   这种方式,能够处理product或者color为miss value的情况; 
而product.color!"red"将只处理color为miss value的情况 
??: Missing value test operator ,测试是否为missing value 
unsafe_expr?? :product.color??将只测试color是否为null 
(unsafe_expr)??:(product.color)??将测试product和color是否存在null 
?exists:旧版本的用法 
比如:<#if mouse??>
   Mouse found
<#else>
   No mouse found
</#if>
Creating mouse...
<#assign mouse = "Jerry">
<#if mouse??>
   Mouse found
<#else>
   No mouse found
</#if> 

分享到:
评论
1 楼 netwelfare 2015-05-19  
推荐一些比较深的内容,从底层讲解了freemarker的实现,很不错的:freemarker系列

相关推荐

    freemarker总结

    这里所说的空值,实际上也包括那些并不存在的变量,对于一个Java的 null值而言,我们认为这个变量是存在的,只是它的值为null,但对于FreeMarker模板而言,它无法理解null值,null值和不存在的变 量完全相同. 为了处理缺失...

    freemarker语法 亲自收集整理

    - **判断对象是否为null**:使用`?is_null`。 - **格式化日期**:使用`?date`和`?datetime`。 - **全局共享变量**:通过`request`, `session`, `application`等作用域设置。 - **直接调用Java对象的方法**:...

    FreeMarke开发指南

    下面将详细讲解FreeMarker的核心概念、指令及其一些常用方法。 1. **概念** - **模板(Templates)**:模板是FreeMarker的基石,它包含了动态和静态文本,通过占位符(`${}`)来表示需要由FreeMarker处理的数据。 -...

    springmvc4_springmvc_mainlyyb8_

    `@RequestBody` 和 `@ResponseBody` 注解分别用于将请求体映射为方法参数,以及将方法返回值转换为响应体。 11. **Tiles 和 Freemarker 视图技术** 除了 JSP,Spring MVC 还支持 Tiles 和 Freemarker 等模板引擎,...

    SpringMVC增删改查

    SpringMVC是Spring框架的一个模块,专为Web应用提供模型-视图-控制器(MVC)架构支持。在本文中,我们将深入探讨SpringMVC如何实现数据库中的增删改查操作,以及相关的关键知识点。 首先,SpringMVC的核心组件包括...

    java面试题目

    在freemarker语法if判断中,如何判断对象是否存在?(B)** - **选项B**: `var??` - 正确答案。在FreeMarker模板引擎中,`var??`用于检查变量是否已定义且非null。 **7. 外部样式表定义元素宽度为100px,正确...

    Spring 3.0 API HTML格式

    SpEL可以用于属性绑定、方法调用、条件判断等多种场景。 5. **RESTful支持**:通过@RequestBody、@ResponseBody和@RequestMapping等注解,Spring 3.0提供了对RESTful Web服务的全面支持。 6. **模板类的增强**:...

    spring 3.0帮助文档

    @RequestMapping注解用于映射HTTP请求,@ResponseBody用于将方法返回值直接写入HTTP响应体。 6. **SpEL(Spring Expression Language)**:Spring 3.0引入了强大的表达式语言,允许在运行时查询和操作对象图。SpEL...

    struts2的简单应用

    3. `execute()`方法的实现及返回值的意义 4. 数据库操作的集成 5. 拦截器的概念和应用 6. 结果类型的配置和使用 通过这些内容,你可以开始构建一个简单的Struts2应用,实现初始化数据库操作的需求。随着对Struts2的...

    javaScript笔记

    数据类型包括基本类型(如String、Number、Boolean、Null、Undefined)和引用类型(如Object)。 2. 运算符:包括算术运算符(+、-、*、/等)、比较运算符(==、===、&gt;、&lt;等)、逻辑运算符(&&、||、!)以及位...

    SpringMVC入门

    5. **ViewResolver**:视图解析器,根据 ModelAndView 中的视图名解析出具体的视图对象,如 JSP、FreeMarker 等。 ### 二、SpringMVC 配置 在 SpringMVC 的应用中,我们需要配置 `web.xml` 文件来初始化 ...

Global site tag (gtag.js) - Google Analytics