FreeMarker的插值有如下两种类型:1,通用插值${expr};2,数字格式化插值:#{expr}或#{expr;format}
${book.name?if_exists } //用于判断如果存在,就输出这个值
${book.name?default(‘xxx’)}//默认值xxx
${book.name!"xxx"}//默认值xxx
${book.date?string('yyyy-MM-dd')} //日期格式
${book?string.number} 20 //三种不同的数字格式
${book?string.currency}--
${book?string.percent}—
//声明变量,插入布尔值进行显示${foo?string("yes","no")}
大小比较符号使用需要注意:(xml的原因),可以用于比较数字和日期使用lt、lte、gt和gte来替代和>= 也可以使用括号y)>
内置函数: 调用区别于属性的访问,使用?代替.
常见的一些内置函数
对于字符串
html-对字符串进行HTML编码
cap_first-使字符串第一个字母大写
lower_case-将字符串转换成小写
trim-去掉字符串前后的空白字符
示例: ${“ freeMarker ”? cap_first }
对于Sequences(序列)size-获得序列中元素的数目
对于数字int-取得数字的整数部分(如-1.9?int的结果是-1)
对于集合,可以使用数组的方式,使用下标索引进行访问
逻辑判断:if................
<