freemaker数据类型
来源:互联网 发布:java 指定jdk 编辑:程序博客网 时间:2024/05/17 02:33
标量:字符串,数字,布尔值,日期
容器:哈希表,序列,集
序列操作:序列连接
<#list ["Joe", "Fred"] + ["Julia", "Kate"] as user>
- ${user}
</#list>
- Joe
- Fred
- Julia
- Kate
- ${user}
</#list>
- Joe
- Fred
- Julia
- Kate
序列切分:
使 用 [firstindex..lastindex] 可 以 获 取 序 列 中 的 一 部 分,2.2.3版本以后可省略lastindex
哈希表操作:哈希表连接
<#assign ages = {"Joe":23, "Fred":25} + {"Joe":30, "Julia":18}>
- Joe is ${ages.Joe}
- Fred is ${ages.Fred}
- Julia is ${ages.Julia}
- Joe is 30
- Fred is 25
- Julia is 18
- Joe is ${ages.Joe}
- Fred is ${ages.Fred}
- Julia is ${ages.Julia}
- Joe is 30
- Fred is 25
- Julia is 18
子程序:方法和函数,用户自定义指令
方法是来自于数据模型(它们反射了 Java 对象的方法),而函数是定义在模板内的(使用了函数指令),但二者可以用同一种方式来使用
用户自定义指令(换句话说,就是 FreeMarker 的标签)这种类型的值也是一种子程序,一种可以复用的模板代码段,用户自定义指令(比如宏),也是第一类值,就像函数 / 方法
一样。
在能实现功能的情况下优先选择自定义指令
内建函数:
html : 字符串中所有的特殊 HTML 字符都需要用实体引用来代替(比如 < 代替 < )
cap_first :字符串的第一个字母变为大写形式
lower_case :字符串的小写形式
upper_case :字符串的大写形式
trim :去掉字符串首尾的空格
序列使用的内建函数:
size :序列中元素的个数
数字使用的内建函数:
int :数字的整数部分(比如 -1.9?int 就是 -1 )
cap_first :字符串的第一个字母变为大写形式
lower_case :字符串的小写形式
upper_case :字符串的大写形式
trim :去掉字符串首尾的空格
序列使用的内建函数:
size :序列中元素的个数
数字使用的内建函数:
int :数字的整数部分(比如 -1.9?int 就是 -1 )
其他:节点等
节点变量代表了树状结构中的一个节点,而且通常是配合 XML 格式来处理的
插值${ }只能在文本区段和字符串文字中使用,否则会出错,典型就是在if指令中使用,比如:<#if ${isMe }><#if>在语法上错误,只能<#if isMe><#if>
处理不存在的值
这个操作是 FreeMarker 2.3.7 版本以后才有的(用来代替内建函数 default ,exists 和 if_exists )
检测不存在的值
unsafe_expr?? 或 (unsafe_expr)??这个操作符告诉我们一个值是否存在。基于这种情况,结果是 true 或 false 。
阅读全文
0 0
- freemaker数据类型
- FreeMaker
- freemaker
- FreeMaker
- freemaker
- freemaker
- freemaker
- freemaker
- Freemaker
- FreeMaker
- freemaker
- FreeMaker
- Freemaker
- FreeMaker开篇
- freemaker基础
- Freemaker 特性
- FreeMaker第一步
- freemaker 小记
- Hive的数据存储
- Spring配置数据源的4中形式
- IntelliJ IDEA新建Maven项目及部署至tomcat 以及JmxAdminException错误解决方案
- Sublime Text3使用技巧
- Dwr 框架简单实例
- freemaker数据类型
- 使用jquery中的ajax方法事,组织数据的思路
- 图片特效 demo
- easyui 在子tab页中打开新tab页(关于easyUI在子页面增加显示tabs的一个问题)
- 第一篇博客
- Mysql my.cnf 优化
- 开源 JSON 库解析性能对比( Jackson / Json.simple / Gson )
- FragmentTabHost的应用,完美解决滑动的时候,一些问题
- 如何写好一个单例,并且考虑了线程安全?