FreeMarker条件判断

简介: FreeMarker条件判断


  1. 断List数据是否为空
<#if tables?exists> <!--使用内建函数 ?exists-->
    <#list tables as table>
        ${table}
    </#list>
</#if>
  1. 条件判断
<#if (a>b)>   <!--也可以写成  <#if a gt b> 
  =(==)      :判断两个值是否相等
  !=         :............不相等
  >(gt)      :判断左边是否大于右边
  >=(gte)    :.....
  <(lt)      :.....
  <=(lte)    :.....
-->
 ${report.name}
</#if>
  1. 判断对象是否存在(null)
<#if target??>   <!--目标变量后两个??-->
    xxxx  
</#if>

freemarker中??和?的区别

  • ??是判断对象是否为空,例如:<#if object??>object对象不为空(即object存在)</#if>
  • ?后面要加内建函数名,例如:<#if object?exists>object对象不为空(即object存在)</#if>
  • <#if str??>${str?string}</#if><#--将str以字符串形式显示-->
  • 总结:判断对象是否null,可使用 ??
  1. 字符串或数字比较
<!--字符串的比较方法和数字比较完全一样 -->
<#if str == "success">  
    xxx  
</#if>  
<#if str !== "error">  
     xxx  
</#if>


相关文章
|
12月前
|
人工智能 JavaScript 开发工具
极速上手!Claude Code 原生支持 Windows 免WSL安装教程
Claude Code 现已支持 Windows 原生运行,无需 WSL 配置。本文提供详细安装教程,涵盖 Node.js 环境验证、Git 安装及 Claude Code 配置步骤,助你快速上手这一强大 AI 编程工具。
13405 13
|
7月前
|
安全 Java API
Spring Boot 4 升级实战:从3.x到4.0的分步升级保姆级指南
Spring Boot 4.0于2025年11月发布,基于Spring Framework 7.0,实现模块化(47个轻量自动配置)、JSpecify空安全校验、原生API版本控制等重大升级。镜像减19%、启动快33%,迁移平滑,3.5.x支持至2026年11月。(239字)
6301 1
|
SQL Java 数据库连接
MyBatis动态SQL字符串空值判断,这个细节99%的程序员都踩过坑!
本文深入探讨了MyBatis动态SQL中字符串参数判空的常见问题。通过具体案例分析,对比了`name != null and name != &#39;&#39;`与`name != null and name != &#39; &#39;`两种写法的差异,指出后者可能引发逻辑混乱。为避免此类问题,建议在后端对参数进行预处理(如trim去空格),简化MyBatis判断逻辑,提升代码健壮性与可维护性。细节决定成败,严谨处理参数判空是写出高质量代码的关键。
2067 0
|
SQL 存储 算法
MySQL视图:虚拟表的创建与使用
MySQL视图是虚拟表,基于SQL查询结果生成,简化复杂查询、隐藏敏感数据,并提升安全性与可维护性。本文详解视图的创建、管理、性能优化及实战应用,助你掌握这一重要数据库工具。
|
关系型数据库 MySQL Linux
CentOS 7系统下详细安装MySQL 5.7的步骤:包括密码配置、字符集配置、远程连接配置
以上就是在CentOS 7系统下安装MySQL 5.7的详细步骤。希望这个指南能帮助你顺利完成安装。
3532 26
|
Arthas 监控 Java
Arthas watch (方法执行数据观测)
Arthas watch (方法执行数据观测)
1399 12
|
消息中间件 JSON Java
Spring Boot、Spring Cloud与Spring Cloud Alibaba版本对应关系
Spring Boot、Spring Cloud与Spring Cloud Alibaba版本对应关系
36923 1