!!和??

1.? !!和???
两个简写符号,可以让我偷电缆(偷点懒)?
${obj.name!!}? =? ${obj.name?default(‘‘)}?

<#if obj?? >?? =? <#if obj?exists>?

对象user,name为user的属性的情况,user,name都有可能为空,那么可以写成${(user.name)!‘‘},表示user或者name为null,都显示为空。判断为空

<#if (user.name)??>

……

</#if>

默认设置

${product.color!"red"} ?如果color为null则默认输出red

${product.name!!} 如果name为null则默认输出空串

<#if product??>不为null<#else>null</#if> ? ? 如果product为null则输出不为null,否则输出null

<#if obj?exists> 与<#if product??>作用相同

${user?if_exists}user不为null就输出,否则不输出

?

时间: 2024-08-27 12:33:52

!!和??的相关文章

Standard C 之 math.h和float.h

对于C Standard Library 可以参考:http://www.acm.uiuc.edu/webmonkeys/book/c_guide/ 或者 http://www.cplusplus.com/reference/ (一) <math.h> 常用函数: 1. 三角函数 double sin(double);正弦 double cos(double);余弦 double tan(double);正切 2 .反三角函数 double asin (double); 结果介于[-PI/2,

&lt;limits.h&gt;和&lt;float.h&gt;

头文件<limits.h>中定义了用于表示整类型大小的常量.以下所列的值是可接受的最小值,实际系统中可能有更大的值. CHAR_BIT 8 char类型的位数 CHAR_MAX UCHAR_MAX或SCHAR_MAX char类型的最大值 CHAR_MIN 0或SCHAR_MIN char类型的最小值 INT_MAX 32767 int类型的最大值 INT_MIN -32767 int类型的最小值 LONG_MAX 2147483647 long的最大值 LONG_MIN -214748364

stdio.h和math.h文件内容

下面的头文件来自CodeBlocks 13.12配套的MINGW,主要是为了方便好奇的同学. 第一个文件是stdio.h. EOF在第47行 printf在第294行 FILE在第139行 stdin在第158行 1 /* 2 * stdio.h 3 * This file has no copyright assigned and is placed in the Public Domain. 4 * This file is a part of the mingw-runtime packa

df -h和du -h 占用空间为什么差这么多?

当磁盘大小超过标准时会有报警提示,这时如果掌握df和du命令是非常明智的选择. df可以查看一级文件夹大小.使用比例.档案系统及其挂入点,但对文件却无能为力.   du可以查看文件及文件夹的大小. 两者配合使用,非常有效.比如用df查看哪个一级目录过大,然后用df查看文件夹或文件的大小,如此便可迅速确定症结. 下面分别简要介绍 df命令可以显示目前所有文件系统的可用空间及使用情形,请看下列这个例子: 以下是代码片段: [[email protected] ~]$ df -hFilesystem 

VS2013使用winsock.h和winsock2.h发生冲突后的终极解决方法

问题:彻底无语了,不小心某个文件包含了windows.h头文件,而windows.h文件里面包含着winsock.h文件, 如果你下次使用winsock2.h文件时,位置不对,然后编译器会给你一大堆重定义错误问题. 初级解决办法: 把winsock2.h文件放在任何可能包含winsock.h文件(尤其是windows.h文件,它就包含了winsock.h文件)的前面,因为winsock2.h头文件有这样的宏定义: #ifndef _WINSOCK2API_#define _WINSOCK2API

最简单的基于librtmp的示例:发布H.264(H.264通过RTMP发布)

本文记录一个基于libRTMP的发布H.264码流的程序.该程序可以将H.264数据发布到RTMP流媒体服务器.目前这个例子还不是很稳定,下一步还有待修改. 本程序使用回调函数作为输入,通过自定义的回调函数,可以发送本地的文件或者内存中的数据. 函数调用结构图 本程序的函数调用结构图如下所示. 整个程序包含3个接口函数:RTMP264_Connect():建立RTMP连接.RTMP264_Send():发送数据.RTMP264_Close():关闭RTMP连接.按照顺序调用上述3个接口函数就可以

P?H?P?中?h?t?t?p?协?议?详?解

对PHP文件来说 Php可以有  html   css javascript php脚本 flash它的不同部分是在不同的地方执行的(服务器和客户端) http协议 1. http协议是建立在 tcp/ip协议基础上 2. 我们的web开发数据的传输都是依赖于http协议 3. http协议全称是超文本传输协议 http协议的  http请求 基本结构: 请求行 消息头 消息体(实体内容) Accept  text/html,application/xhtml+xml,application/x

24&gt;&gt;sys/types.h和fcntl.h有什么用

sys/types.h 是Unix/Linux系统的基本系统数据类型的头文件,含有size_t,time_t,pid_t等类型. 在应用程序源文件中包含 <sys/types.h> 以访问 _LP64 和 _ILP32 的定义.此头文件还包含适当时应使用的多个基本派生类型.尤其是以下类型更为重要: clock_t 表示系统时间(以时钟周期为单位). dev_t 用于设备号. off_t 用于文件大小和偏移量. ptrdiff_t 是一种带符号整型,用于对两个指针执行减法运算后所得的结果. si

已经包含了#include &lt;atlcom.h&gt; #include &lt;comutil.h&gt;还是报错

在WTL工程的.h中 #include <atlbase.h>#include <atlcom.h>#include <atlcomcli.h>#include <atlctl.h>#include <atlwin.h>#include <comutil.h> 结果还是下面一堆错,为什么呢,因为你没有使用这个using namespace ATL; 加上这个下面错全部消失. error C2061: syntax error : id

几大常用头文件stdio.h,stdio.h ,stdbool.h里的定义

C 标准库 - <stdio.h> 简介 stdio .h 头文件定义了三个变量类型.一些宏和各种函数来执行输入和输出. 库变量 下面是头文件 stdio.h 中定义的变量类型: 序号 变量 & 描述 1 size_t  这是无符号整数类型,它是 sizeof 关键字的结果. 2 FILE  这是一个适合存储文件流信息的对象类型. 3 fpos_t  这是一个适合存储文件中任何位置的对象类型. 库宏 下面是头文件 stdio.h 中定义的宏: 序号 宏 & 描述 1 NULL