还说下函数吧。
1. 创建一个方法变量
<#function avg x y>
<#return (x + y) / 2>
</#function>
${avg(10, 20)}
该函数的结构就如上所示,<#function ^^^>,其中函数名字叫avg,参数为x y。函数是带返回值的。很简单,没啥必要废话。
2. 用java实现
import java.util.List;
import freemarker.template.TemplateMethodModel;
import freemarker.template.TemplateModelException;
public class AVGFreemarker implements TemplateMethodModel {
@SuppressWarnings("unchecked")
public Object exec(List list) throws TemplateModelException {
Integer s= Integer.parseInt((String) list.get(0));
Integer t= Integer.parseInt((String) list.get(1));
int m=(s+t)/2;
return m;
}
}
方法写完之后注册呗,同自定义指令相同。
cfg.setSharedVariable("average", new AVGFreemarker());
注册完当然调用即可。
${average(10, 20)}
没啥好说的。
分享到:
相关推荐
FreeMarker 是一种强大的模板语言,主要用于生成动态内容,如HTML页面。...FreeMarker的核心概念是将静态的...对于初学者来说,理解FreeMarker的基础知识,如变量类型、模板结构和插值机制,是掌握这一技术的关键步骤。
### FreeMarker语法知识详解 #### 一、FreeMarker概述 FreeMarker是一种强大的模板引擎,用于生成文本输出。它被广泛应用于Web开发中,用于动态生成HTML页面以及其他类型的文本文件,如XML、JavaScript、电子邮件等...
根据提供的文件信息,我们可以深入探讨FreeMarker的基础语法及其在模板引擎中的应用。FreeMarker是一种用于生成文本输出的模板引擎,广泛...掌握了这些基础知识后,开发者就可以更高效地利用FreeMarker来构建动态网页。
本文将深入探讨Freemarker的基础知识,包括其主要特性和使用方法。 ### 1. 注释 Freemarker的注释使用`和`-->`这一对标签,而非标准的HTML注释`<!--`和`-->`。例如: ```html 这是一条Freemarker注释 --> ``` ##...
从标题和描述中提取的关键知识点是关于Freemarker的基本概念、其功能和用途,以及如何进行模板开发和程序开发。Freemarker是一种强大的模板引擎,广泛应用于Web开发中,尤其是MVC架构的应用中,负责生成HTML网页或...
在Freemarker的2.3.28版本中,我们可以期待以下关键知识点: 1. **模板语言FTL**: Freemarker使用的模板语言叫做FreeMarker Template Language (FTL),它是一种声明式的、非过程式的语言。FTL文件包含了一系列的...
1. **Freemarker基础知识**:Freemarker是一个基于模板的语言,它允许开发者通过定义模板文件,然后结合Java对象数据,生成动态内容。模板文件中包含了一系列控制结构(如条件语句、循环)和变量引用,这些变量可以...
在本资料中,我们将深入探讨Freemarker的基础知识,包括其基本语法、数据模型、模板设计以及如何在实际项目中使用它。 1. **Freemarker语法** Freemarker的核心是模板语言,由控制结构(如条件语句和循环)、变量...
1. **Freemarker基础概念** - **模板语言**:Freemarker使用一种简单的、声明式的模板语言,允许开发者编写模板,与后台数据模型结合,生成动态内容。 - **数据模型**:Freemarker模板与应用程序的数据模型进行...
首先,让我们理解Freemarker的基础知识。Freemarker是一个与语言无关的模板引擎,它将数据模型与视图(HTML或其他格式的文档)分离,实现了MVC模式。开发者定义模板文件,然后在后端填充数据模型,Freemarker会根据...
这表明文档会从基础知识入手,逐步深入讲解FreeMarker的各种特性和用法。 - **阅读建议**:对于初学者而言,建议首先了解FreeMarker的基本概念和使用场景;然后,可以重点关注模板语言的语法结构,掌握变量引用、...
一、Freemarker基础 1. 模板语言:Freemarker是一种基于模板的语言,它允许开发者通过简单的语法(如 `${}` 和 `#if`)来动态地生成文本输出,如HTML、XML或者,如我们所关注的,Excel文件。 2. 数据模型:在使用...
在这个例子中,我们看到的是如何在使用Struts2框架的基础上,集成Freemarker进行分页处理。以下是对这个主题的详细讲解: 首先,**Freemarker** 是一个模板引擎,它允许开发者通过定义模板来生成HTML或其他文本格式...
本压缩包集合了丰富的Freemarker学习资源,涵盖从基础到进阶的各种知识点,以下是这些文档中可能包含的详细内容: 1. **Freemarker中文手册.pdf**: 这份手册通常会详细介绍Freemarker的基本概念,如模板语言、...
### FreeMarker实例教程知识点详解 ...以上知识点覆盖了FreeMarker的主要方面,通过本教程的学习,读者不仅能够掌握FreeMarker的基本使用方法,还能够深入了解其高级特性,为日后解决复杂的Web开发问题打下坚实的基础。
通过掌握这些基础知识,开发者能够有效地使用FreeMarker来构建动态网站和应用程序。在学习FreeMarker模板语法时,需要注意标签的正确使用、插值的类型和应用场景,以及如何通过设置和函数来控制数据的格式化输出。
它在Web开发中,尤其是在Struts2框架中,被广泛用于视图层...通过以上内容的学习,开发者不仅可以理解FreeMarker的基础知识,还能掌握在Struts2项目中实际运用FreeMarker的方法,从而提高Web应用的开发效率和代码质量。
在Freemarker 2.3.18版本中,有几个关键知识点值得一提: 1. **模板语言基础**:Freemarker模板由静态文本和动态控制结构组成,如`<#if>`、`<#foreach>`等。动态部分是由${...}或#{...}包裹的表达式,用于插入数据...
在FreeMarker的基础实现中,有几个核心概念和关键知识点: 1. **模板(Template)**:模板是FreeMarker的基石,它定义了如何展示数据。模板文件通常以`.ftl`为扩展名,其中包含FreeMarker语法,如`${expression}`...