`
精神分裂
  • 浏览: 29197 次
  • 性别: Icon_minigender_1
  • 来自: 二次元世界
社区版块
存档分类
最新评论

FreeMarker模板文件

阅读更多
FreeMarker模板文件主要由如下4个部分构成:
1. 文本:直接输出的部分
2. 注释:即<#-- …… -->格式部分,不会输出
3. 插值:即${……}或者#{……}格式的部分,将使用数据模型中的部分替代输出
4. FTL指令:FreeMarker指令,和HTML标记类似,名字前加#予以区分,不会输出

<html>
<body>
	<#-- 注释部分 -->
	<#-- 下面引用插值 -->
	<h1>Welcome! ${user}!</h1>
	<#-- 使用FTL指令 -->
	<#list animals as begin>
		<li>${begin.name} for ${begin.price} Euros<br>
	</#list>
</body>
</html>


FTL指令规则
FreeMarker中,使用FTL标签来使用指令,FreeMarker有3种FTL标签,这和HTML标签完全类似。
开始标签:<#directivename parameters>
结束标签:</#directivename>
空标签:<#directivename parameters/>
实际上,使用标签时,前面的#符号也可能变为@,如果该指令是一个用户指令而不是系统内建指令时,应将#符号改为@符号。
注意:如果使用不存在的指令,FreeMarker不会使用模板输出,而是产生一个错误信息。
注意:<、</和指令之间不允许有空白字符。

FreeMarker插值规则
FreeMarker的插值有两种类型:
1. 通用插值:${expr}
2. 数字格式化插值:#{expr}或#{expr;format}

<#setting number_format="currency" />
<#assign answer=42 />
${answer}  --输出为--  $42.00
${answer?string}  --输出为--  $42.00
${answer?string.number}  --输出为--  42
${answer?string.currency}  --输出为--  $42.00
${answer?string.percent}  --输出为--  4,200%

<#assign foo=true/>
${foo?string("yes", "no")}
输出结果为:
yes

${lastUpdated?string("yyyy-mm-dd HH:mm:ss zzzz")}
${lastUpdated?string("EEE,MMM d, ''yy")}
${lastUpdated?string("EEEE,MMMM dd, yyyy, hh:mm:ss a '('zzzz')'")}
输出结果为:
2003-04-08 21:24:44 Pacific Daylight Time
Tue, Apr 8, '03'
Tuesday, April 08, 2003, 09:24:44 PM (PDT)

可采用#{expr; format}形式来格式化数字,其中format可以是:
mX:小数部分最小X位
MX:小数部分最大X位


分享到:
评论

相关推荐

    freeMarker模板文件附件.zip

    这个“freeMarker模板文件附件.zip”压缩包包含了一些关键资源,便于学习者深入理解并实践FreeMarker模板语言的用法。 1. **FreeMarker模板语言基础** FreeMarker是基于模板的,它与Java代码分离,使得视图层的...

    FreeMarker模板文件的组成及基本语法详解(一)

    FreeMarker模板文件的组成及基本语法详解 FreeMarker模板文件由四部分组成:文本、注释、插值和FTL指令。文本是直接输出的部分,注释是以#--开头的格式部分,不会输出。插值是以${...}或#{...}格式的部分,将使用...

    java使用freemarker模板技术导出word

    3. **编写 FreeMarker 模板**:设计一个 .ftl(FreeMarker Template Language)文件,其中包含 Word 文档的结构和占位符。占位符将以 `${}` 包围,用于在运行时被数据模型中的值替换。 4. **加载模板**:使用 ...

    Java freemarker 模板生成word动态表格

    8. **src**:这个目录通常包含了Java源代码和FreeMarker模板文件。源代码中会有一个Java类负责处理数据模型,加载模板,以及生成Word文档。而模板文件(.ftl)则位于`src/main/resources`目录下,其中定义了Word文档...

    利用freemarker 模板生成pdf ,利用easypoi 生成excel(带图片,水印,分页)

    1. Freemarker模板文件(.ftl),展示了PDF的结构和样式。 2. Java代码示例,演示如何加载数据模型并使用Freemarker和Flying Saucer生成PDF。 3. EasyPOI的使用示例,包括如何添加图片、设置水印和实现分页的Excel...

    基于Freemarker模板的代码生成器工具

    1. **配置模板**:开发者定义一系列的Freemarker模板文件,每个模板对应一种或多种代码结构,如实体类、DAO接口、Service类等。 2. **设置数据模型**:根据需求,生成器会要求用户输入必要的参数,如数据库表名、...

    Java利用Freemarker模板自动生成dto、dao、rowmapper、bo、service代码

    在实际项目中,"JavaCodeGenerater"这个压缩包很可能包含了一系列的Freemarker模板文件,如dto.ftl、dao.ftl、rowmapper.ftl等,以及一个生成代码的主程序。主程序会读取数据库表结构,使用Freemarker解析模板,生成...

    mybatis自动生成代码的模板--freemarker版本.zip

    附件包含了mybatis-plus自动生成代码,基于freemarker的模板。包括常规的curd。 【特点】针对每个接口都有对应的入参和出参,不公用entity。 如,add接口,则入参会自动生成为addEntityReq。具体可下载模板进行查看...

    基于数据库元数据模型的Freemarker模板驱动的Java代码生成器设计源码

    项目源码包含63个文件,涵盖35个Java源文件、10个JAR包文件、8个Freemarker模板文件、2个Gradle构建文件、2个XML配置文件、1个Git忽略文件、1个LICENSE文件、1个Markdown文件、1个文本文件、1个DTD文件等。...

    生成静态页面 freemarker模板

    2. **Freemarker模板设计**: 设计Freemarker模板文件,定义HTML结构和动态内容的占位符。例如,`欢迎,${user.name}!&lt;/#if&gt;` 这样的语句会根据用户是否登录来决定是否显示欢迎信息和用户名。 3. **生成HTML**: 在...

    freemarker模板导出word循环图片表格源码和详细教程

    1. 创建Freemarker模板文件,定义表格和图片的占位符。 2. 在Java代码中,设置Freemarker的配置,加载模板。 3. 构建数据模型,包括图片URL或Base64字符串列表,以及表格数据(二维列表)。 4. 使用`Template`对象的...

    Struts2与FreeMarker模板

    接下来,在项目的类路径下创建`/WEB-INF/templates`目录,将FreeMarker模板文件放置于此目录下。 #### 使用FreeMarker模板 在Struts2的Action中,可以通过设置模型属性来向模板传递数据。例如: ```java public ...

    基于Freemarker模板的代码生成器前台页面模板文件

    Freemarker模板中的`&lt;#list&gt;`指令用于遍历数据集合,`&lt;#if&gt;`、`&lt;#else&gt;`则用于条件判断,而`&lt;@include&gt;`可以包含其他公用部分的模板。 2. **EditPage.ftl**:编辑页面模板,用于展示和修改已有数据。通常会包含表单...

    freemarker导出doc及docx

    解压后,你可以看到`src/main/resources/templates`目录下的Freemarker模板文件,`pom.xml`文件中的依赖配置,以及可能存在的`FreeMarkerUtil.java`文件。 总的来说,“freemarker导出doc及docx”涉及到了...

    通过freemarker模板 生成PDF

    `PDFTool`可能包含使用Freemarker的方法,如`processTemplate()`,此方法接受模板文件路径、数据模型和目标PDF输出路径作为参数。`FileController`则可能是处理HTTP请求的控制器,它接收一个HTML URL,并调用`PDF...

    基于Java语言的Android平台Freemarker集成设计源码

    本项目是一款基于Java语言的Android平台Freemarker集成设计方案源码,包含1181个文件,其中包括747个Java源文件、178个Freemarker模板文件、110个文本文件、22个HTML文件、21个XML配置文件、16个输出文件、14个JSP...

    Freemarker语法总结

    FreeMarker 模板文件由四个部分组成:文本、注释、插值和 FTL 指令。 一、文本 文本是 Freemarker 模板文件的直接输出部分。它可以是静态的 HTML 代码,也可以是动态生成的内容。 二、注释 注释是在 Freemarker ...

    Freemarker导出word示例,包括jfreechart图表

    - 一个或多个Freemarker模板文件(.ftl),定义了Word文档的布局和占位符。 - 示例数据模型类或JSON文件,用于填充模板。 - Java源代码,展示了如何使用Freemarker和JFreechart进行操作。 - 图表生成的临时图像文件...

    struts2与Freemarker的配置文件

    而Struts2是一个框架,它提供了对Freemarker的很好支持,使得开发人员可以利用熟悉Struts2的标签来开发Freemarker模板文件。下面详细阐述Struts2与Freemarker的配置方法。 首先,要安装开发Freemarker模板文件的...

    spring与freemarker整合 示例源码

    - 配置视图解析器:定义`FreemarkerViewResolver` Bean,指定视图名与Freemarker模板文件的映射规则。 2. **Freemarker模板**: - 模板语法:Freemarker使用简单的指令(如`&lt;#if&gt;`、`&lt;#foreach&gt;`)来控制逻辑,`$...

Global site tag (gtag.js) - Google Analytics