文档章节

FreeMarker学习(二):数值和类型

yuhuan121
 yuhuan121
发布于 2017/09/06 16:19
字数 488
阅读 3
收藏 0

1、数值

数值不一定是数字类型的值,也有可能是字符串、日期、布尔值、哈希表等;

(root)
 |
 +- user = "Big Joe"
 |
 +- today = Jul 6, 2007
 |
 +- todayHoliday = false
 |
 +- lotteryNumbers
 |   |
 |   +- (1st) = 20
 |   |
 |   +- (2st) = 14
 |   |
 |   +- (3rd) = 42
 |   |
 |   +- (4th) = 8
 |   |
 |   +- (5th) = 15
 |
 +- cargo
     |
     +- name = "coal"
     |
     +- weight = 40

比如:变量user的值是字符串,today的值是日期,holiday的值是布尔值,lotteryNumbers的值是一个序列,是多值类型,假如把它看做容器的话,就是一个单值类型,cargo是一个hash表。

2、类型

数值的类型决定了数值可使用的最大限度

它有4种:

2.1、标量

标量是最基本的数值类型,有:

  • 字符串:表示简单的文本
  • 数值
  • 布尔值:逻辑上的对与错
  • 日期:日期变量可以存储和日期、时间相关的数据
    • 日期:精确到天,没有时间。eg June 1,2017
    • 时间:精确到毫秒。eg 10:10:10 AM
    • 日期-时间:包含上面两者 eg June 1,2017 10:10:10 AM

2.2、容器

容器里包含的变量称为子变量,有以下几种类型:

  • 哈希表:每个子变量都可以通过唯一一个名称来查找,子变量是没有顺序的;
  • 序列:每个子变量通过索引来标识,子变量是有顺序的;
  • 集合:是有限制的序列,不能获取集合的大小,也不能通过索引来获取集合中的子变量,但是可以用list指令来遍历;

数据模型本身就是哈希表

2.3、子程序

2.3.1、方法和函数

当一个值是方法或函数的时候,可以根据传递的参数来计算其他值,比如

1和3的平均数是:${avg(1, 3)}

输出:

1和3的平均数是:2

2.3.2、用户自定义指令

用户自定义指令是freemarker的标签,是一种子程序,一种可以服用的模板代码段;

eg

<@greet></@greet>

© 著作权归作者所有

共有 人打赏支持
yuhuan121
粉丝 0
博文 36
码字总数 38704
作品 0
佛山
程序员
私信 提问
FreeMarker在eclipse中的入门例子

刚接触FreeMarker时,只是简单的了解FreeMarker的一些概念及工作原理,至于如何使用FreeMarker还不是非常清楚。随着学习的深入,才渐渐对FreeMarker有了更深入的理解。本文将从基础应用着手,...

oecp
2011/05/16
0
0
FreeMarker模板文件的组成及基本语法详解(一)

FreeMarker模板文件并不比HTML页面复杂多少,FreeMarker模板文件主要由如下4个部分组成: 1. 文本:直接输出的部分 2. 注释:<#-- ... -->格式部分,不会输出 3. 插值:即${...}或#{...}格式的部分...

oecp
2011/05/26
0
0
细数FreeMarker的优缺点

一、 FreeMarker简介 FreeMarker是一个用Java语言编写的模板引擎,它基于模板来生成文本输出。 所谓模板,就是一份已经写好了基本内容,有着固定格式的文档,其中空出或者用占位符标识的内容...

oecp
2011/04/22
0
3
freemarker语法介绍及其入门

FreeMarker标签使用 一、FreeMarker模板文件主要有4个部分组成 1、文本,直接输出的部分 2、注释,即<#--...-->格式不会输出 3、插值(Interpolation):即${..}或者#{..}格式的部分,将使用数...

wersdffg
2014/09/30
0
0
freemaker开发学习《一》

 FreeMarker是一个非常优秀的模板引擎,这个模板引擎可用于任何场景,FreeMarker负责将数据模型中的数据合并到模板中,从而生成标准输出.FreeMarker可以提供昜好的团队协作,对于界面开发人...

xiaml
2014/04/25
0
0

没有更多内容

加载失败,请刷新页面

加载更多

最重要的是做什么,而不是怎么做。

最重要的是做什么,而不是怎么做。 做什么是战略,怎么做是战术。将军下令说,天黑前拿下这座山头,这是战略。手下的士兵可以不知道为什么要拿下这座山头,还非得是天黑之前,但士兵必须知道...

我是菜鸟我骄傲
今天
1
0
w, vmstat, top, sar, nload命令查看系统状态信息

w/uptime 查看系统负载 cat /proc/cpuinfo 查看cpu核数 vmstat 监控系统状态,用法 vmstat 1,关键的几列: r, b, swpd, si, so, bi, bo, us, wa top 查看进程使用资源情况 top -c 显示详细的...

野雪球
今天
2
0
小白创建一个spring boot项目

进入 https://start.spring.io/

lilugirl
今天
3
0
Alibaba Java诊断利器Arthas实践--使用redefine排查应用奇怪的日志来源

背景 随着应用越来越复杂,依赖越来越多,日志系统越来越混乱,有时会出现一些奇怪的日志,比如: [] [] [] No credential found 那么怎样排查这些奇怪的日志从哪里打印出来的呢?因为搞不清...

hengyunabc
今天
2
0
home hosts

home hosts lwk@qwfys:~$ cat /etc/hosts127.0.0.1 localhost127.0.1.1 qwfys192.168.56.101vm600.qwfys.com39.108.212.91alpha1.ppy.com39.108.117.122alpha2.p......

qwfys
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部