`

freemarker 插值注意要点

 
阅读更多

FreeMarker中插入值的一些注意点

2010-07-02 19:36:08| 分类: FreeMarker 2.3.1 | 标签: |字号 订阅

1.<#if ></if>等语句中不要使用${}值,应直接写

例1:

以下为错误写法:

[#if ${isBig}]Wow![/#if]或者[#if "${isBig}"]Wow![/#if]

应写成:

[#if isBig]Wow![/#if]

2.${}中都是字符串

例2:

若写:

${1.5}

则:在英文环境下输出:

1.5

在匈牙利环境下输出:

1,5

在有些情况下需要避免这种情况,则可以在后面加上C

例3:

有时候要在URL里面加上数据库数据的ID,则可以这么写:

 

<a href="/shop/productdetails?id=${product.id?c}">Details...</a>  

 

将数字转化成String可以使用number_format 设置

3.如果插入的是date,会自动转换成默认的格式

但是,如果只有date中的部分,如 (year, month, day)或者(hour, minute, second, millisecond),FreeMarker无法找到你使用的部分,必须使用内置插件的date, time 或者datetime 来使其找到这部分。

4.试图使用插入输出boolean型的值,将会出错并使模板运行终止。

可以使用?String内置插件将其转化成String类型

例4:

${married?string("yes", "no")}

5.如果工作在经典兼容模式下

boolean:true为字符串"true",false为空字符串

未定义的:空字符串

其他:报错并终止

分享到:
评论

相关推荐

    FreeMarker的基础知识整理

    - **布尔插值**:布尔值可以直接在模板中使用,但需要注意的是,它们在插值时不进行自动转换,需要根据需要进行显式转换。 FreeMarker还支持条件语句(`&lt;#if&gt;`、`&lt;#else&gt;`、`&lt;#elseif&gt;`)、循环(`&lt;#foreach&gt;`、`...

    FreeMarker实例教程,手把手教你FreeMarker的方方面面

    - **插值**:描述了如何在模板中插入变量和表达式以生成动态内容。 #### 4. 其它 - **自定义指令**:教授如何根据项目需求创建自定义指令。 - **在模板中定义变量**:讲解如何在模板内部定义变量并使用它们。 - **...

    freemarker中文文档

    ### Freemarker中文文档知识...以上内容概述了**Freemarker**的核心概念和技术要点,对于初学者来说,了解这些基础知识将有助于更好地掌握和运用该模板引擎。随着实践的深入,开发者还可以探索更多高级特性和应用场景。

    freemarker_中文参考手册

    插值表达式(${...})是Freemarker中用来引用数据模型中数据的一种方式。它们允许你在模板中嵌入变量名或其他表达式,这些表达式将在渲染模板时被实际的数据值所替换。例如: ```html 最新产品: ${latestProduct....

    Freemarker中文文档

    随后,文档对数据模型和模板进行了详细分类与说明,其中数据模型包括标量、容器、方法等概念,模板则涉及到指令、表达式、插值等组成部分。 第二部分的程序开发指南则更加深入地探讨了如何在程序层面与FreeMarker...

    FreeMarker

    - **空白处理**:提供对模板中空白字符的特殊处理机制,以避免不必要的空白输出。 - **命名空间**:支持命名空间的概念,帮助管理复杂的模板体系。 - **替换语法**:使用方括号表示法进行特殊字符的转义等操作。 ##...

    freemarker使用文档

    FreeMarker是一款模板引擎,即一种基于模板处理文本的技术。...它使用一种简单的模板语言,在服务器端...由于文档的篇幅限制,无法详细展示每一节的全部内容,但通过这些要点能够了解FreeMarker的基本使用方法和高级特性。

    freemarker总结

    在表达式中使用算术运算符时要注意以下几点: 1,运算符两边的运算数字必须是数字 2,使用+运算符时,如果一边是数字,一边是字符串,就会自动将数字转换为字符串再连接,如:${3 + "5"},结果是:35 使用内建的int函数可...

    FreeMarker中文帮助文档

    模板中还包含表达式和插值,其中插值是指在模板文本中直接插入数据模型的变量或计算结果。 在模板的其他高级特性中,FreeMarker支持自定义指令,允许用户扩展模板语言的功能;同时也可以在模板中定义变量,为模板...

    超完整FreeMarker中文教程,代码

    什么是FreeMarker? ................................................................................................. 7 我们应该阅读什么内容? .............................................................

    FreeMarker 快速入门 上手

    插值是 FreeMarker 中的一种特殊语法,用于在字符串中插入变量值。例如: ```html &lt;p&gt;The current time is: ${time} ``` ### 四、程序开发指南 #### 4.1 创建配置实例 创建 FreeMarker 配置实例是使用 FreeMarker...

    FreeMarker.pdf

    根据提供的文件信息,我们可以从《FreeMarker手册》中提取出一系列关键知识点,这些知识点主要围绕着FreeMarker模板引擎的基础概念、使用方法以及高级...这对于想要熟练掌握FreeMarker的开发者来说是非常宝贵的资源。

    Freemarker中文教程

    2. **创建数据模型**:准备要传递给模板的数据模型,通常是一个Map或其他可迭代的数据结构。 3. **获得模板**:从配置对象中加载模板。 4. **合并模板和数据模型**:将数据模型传递给模板,生成最终的输出。 ####...

    FreeMarker 手册

    3.4 插值 .......................................................................................................... 42 第四章 其它 ........................................................................

    freemark学习笔记

    在使用FreeMarker时,需要注意: - 注释可以在标记和插值内部,但FTL标记不能。 - 插值只能在文本部分使用,不能在FTL标记内。 - 每个开始标记都要有相应的结束标记,不能交错嵌套。 掌握这些基本概念和规则后,你...

    p13-24freemaker.pdf

    FreeMarker 是一款 模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本 (HTML 网页,电子邮件,配置文件,源代码等)的通用工具。 它不是面向最终用户的,而 是一个 Java 类库,是一款程序员可以嵌入他们...

Global site tag (gtag.js) - Google Analytics