Freemarker的基本数据类型【存储单值】有数字、字符串、boolean、日期。在这里直接用定义变量的方式来操作各种数据类型的输出。
数字【整型】
定义一个数字,然后加10输出,结果是21
<#--<>定义了一个数字-->
<#assign num=10>
${num+11}
|
21
|
字符串
定义一个字符串“10”,然后加11,输出是1011
<#--<>定义了一个字符串-->
<#assign str="10">
${str+11}
|
1011
|
然后再定义一个str=33,会覆盖上面定义的同名变量,而不会顾及数据类型是否一致,加11后输出44
<#--<>值会完成覆盖-->
<#assign str=33/>
${str+11}
|
44
|
布尔型
直接输出会报错,因为不能直接输出数字或者字符串以外的类型,否则都会报错,需要转换为字符串才能输出使用xxx?string可以完成对字符串的转换
${b?string}
${(a.d)???string}
|
true
false
|
日期
日期也不能直接输出,需要转换为字符串,同时没设日期格式也会报错
<#--<>日期也不能直接输出,需要转换为字符串-->
${now?string("yyyy-MM-dd HH:mm:ss")}
|
2012-06-17 00:48:18
|
${now?string}
|
没有为日期设定格式也会报错
|
字符串连接
<#--<>以下显示了使用字符链接和插值的方式连接字符串-->
${"hello"+username}
${"hello${username}"}
|
hello张三
hello张三
|
字符串与日期之间的转换
<#--<>
字符串转换为日期
data用来转换日期,datatime用来转换日期和时间,time用来转换时间
-->
<#assign bir="1979-12-02 12:22:33"?date("yyyy-MM-dd HH:mm:ss")>
${bir}
<#assign bir="1979-12-02 12:22:33"?datetime("yyyy-MM-dd HH:mm:ss")>
${bir}
|
1979-12-2
1979-12-2 12:22:33
|
HTML特殊符号转义
<#--html转义-->
${" "?html}
|
<br/>
|
其他操作
<#--<>如果不足10个字符,以--在左边填充-->
[${"abcde"?left_pad(10,"--")}]
<#--<>四舍五入-->
${1.4?string(0)}
<#--<>舍去小数点后面的-->
${1.8?int}
|
[-----abcde]
1
1
|
本文链接:FreeMarker基本数据类型,本文由huangyineng原创,转载请注明出处
下一节:FreeMarker集合(List、Map)
|
相关推荐
以下将详细讲解如何使用FreeMarker(FTL)进行数据交互,特别是针对列表类型的数据。 1. **FreeMarker(FTL)数据交互基础** FreeMarker模板文件(FTL)是纯文本文件,扩展名为`.ftl`,用于定义页面布局和逻辑。在...
3. 数学运算:Freemarker支持基本的数学运算,如加减乘除,以及`+`、`-`、`*`、`/`、`%`等运算符。 4. 静态导入:`#static`指令允许导入静态成员,如Java类的常量或静态方法。 5. 自定义指令:通过实现`...
### FreeMarker模板基本语法 #### 一、FreeMarker概述与基本用法 **FreeMarker**是一种强大的、基于Java的模板引擎,主要用于动态生成HTML页面,但也支持其他类型的文本格式(如XML、JavaScript、电子邮件等)。它...
2. **数据模型**:理解如何将Java对象绑定到模板,包括基本类型、集合、Map等数据结构的使用。 3. **模板设计模式**:如主模板(Master Template)与内容块(Content Blocks)的配合,实现页面的复用和布局。 4. *...
这个"freemarker Demo"项目应该包含了基本的模板文件、Struts2配置以及相关的Java代码,通过实际运行和修改这些文件,初学者可以更好地理解Freemarker的工作原理和使用方法。在学习过程中,可以逐步尝试不同的表达式...
此外,还会涉及Freemarker的数据类型、指令、内置函数和宏的使用。 2. **freemarker语法完整版.doc**: 这个文档将深入解析Freemarker的语法特性,包括模板注释、条件语句(如`<#if>`、`<#else>`、`<#choose>`)、...
- **数据模型一览**:详细介绍了FreeMarker支持的各种数据类型,包括基本类型(如字符串、数字)、复杂类型(如列表、哈希表)、以及特殊类型(如日期、时间)。 - **模板一览**:提供了关于模板语法的详细介绍,...
开发者可以将任何Java对象传递给FreeMarker,包括基本类型、集合、Map等。 3. 指令和变量:FreeMarker支持多种指令,如`<#if>`(条件判断)、`<#foreach>`(循环)和`<#assign>`(赋值)。变量则用于显示数据模型中...
FreeMarker 是一款模板引擎,它主要功能是基于模板和变动的数据来生成输出文本,这些文本可以是 HTML 网页、电子邮件、配置文件、源代码等。这款工具并非面向最终用户,而是作为一个 Java 类库被程序员嵌入到他们...
- **FreeMarker**提供了多种循环结构,如`<#list items as item>`,可以处理不同的数据类型和复杂度。 - **Velocity**也支持循环,但其语法相对简单,通常使用`#foreach($item in $items)`这样的形式。 3. **条件...
- **类型**:FreeMarker支持多种数据类型,包括但不限于:数值类型、字符串类型、布尔类型、集合类型、映射类型等。每种类型都有其特定的用途和使用场景。 #### 三、模板详解 - **总体结构**:介绍了模板的基本结构...
这个示例是关于如何使用Freemarker来生成XML文件,对于初学者来说,理解这个过程有助于掌握Freemarker的基本用法和XML的生成技巧。 在Java中,Freemarker与数据模型结合,通过模板文件生成输出。对于XML生成,首先...
Freemarker基本语法** - **变量(Variables)**: `${variable}` 用于输出变量值,如 `${user.name}`。 - **表达式(Expression)**:支持算术运算、比较、逻辑运算等,如 `${list.size() > 5 ? 'big' : 'small'}`。 - ...
- **优点**:FreeMarker易于学习,模板语言简洁,支持多种数据类型,与Java无缝集成,能有效实现视图与业务逻辑解耦。`FreeMarker的优点和缺点.mht`详细列出了这些优点。 - **缺点**:虽然FreeMarker在很多方面...
- **FreeMarker**支持多种类型的数据,这些数据类型可以用来构建复杂的数据模型,从而在模板中进行丰富的数据展示。 - **数值类型**包括整数、浮点数等,可以直接在模板中使用或通过内置函数进行操作。 ##### 2.2 ...
2. Freemarker基本概念: - 模板(Template):Freemarker模板是纯文本文件,包含静态文本和动态表达式,动态部分由Freemarker引擎解析并替换为实际值。 - 数据模型(Data Model):数据模型是传递给模板的数据...
一、Freemarker基本概念 1. 模板:Freemarker模板是HTML或者其他格式的文本文件,其中包含了Freemarker特定的指令和表达式,用来插入、控制或计算数据。 2. 数据模型:这是提供给Freemarker模板的数据源,通常由应用...
以上是对Velocity和FreeMarker的基本介绍和比较,它们都是Java Web开发中的重要工具,理解它们的特性和应用场景有助于选择最适合项目的技术栈。对于标签“源码”和“工具”,我们可以进一步研究这两个模板引擎的源...
一、Freemarker基本概念 1. 模板:Freemarker的核心是模板,模板是HTML或其他文本文件,其中包含Freemarker表达式和指令,这些元素会被解释并替换为实际值。 2. 数据模型:数据模型是Java对象集合,它们提供给模板...
其中,内建函数部分详细列出了用于处理字符串、数字、日期、布尔值、序列、哈希表、节点等不同数据类型的函数。指令参考部分则列举了FreeMarker中的各种指令,如条件语句指令、循环语句指令、宏指令等,每个指令都有...