最近用FreeMarker做页面做了个项目,我也是初次用。
1、快速入门
(1)模板 + 数据模型 = 输出
FreeMarker基于设计者和程序员是具有不同专业技能的不同个体的观念
他们是分工劳动的:设计者专注于表示——创建HTML文件、图片、Web页面的其它可视化方面;程序员创建系统,生成设计页面要显示的数据
经常会遇到的问题是:在Web页面(或其它类型的文档)中显示的信息在设计页面时是无效的,是基于动态数据的
在这里,你可以在HTML(或其它要输出的文本)中加入一些特定指令,FreeMarker会在输出页面给最终用户时,用适当的数据替代这些代码
下面是一个例子:
<html>
<head>
<title>Welcome!</title>
</head>
<body>
<h1>Welcome ${user}!</h1>
<p>Our latest product:
<a href="${latestProduct.url}">${latestProduct.name}</a>!
</body>
</html>
这个例子是在简单的HTML中加入了一些由${…}包围的特定代码,这些特定代码是FreeMarker的指令,而包含FreeMarker的指令的文件就称为模板(Template)
至于user、latestProduct.url和latestProduct.name来自于数据模型(data model)
数据模型由程序员编程来创建,向模板提供变化的信息,这些信息来自于数据库、文件,甚至于在程序中直接生成
模板设计者不关心数据从那儿来,只知道使用已经建立的数据模型
下面是一个可能的数据模型:
(root)
|
+- user = "Big Joe"
|
+- latestProduct
|
+- url = "products/greenmouse.html"
|
+- name = "green mouse"
数据模型类似于计算机的文件系统,latestProduct可以看作是目录,而user、url和name看作是文件,url和name文件位于latestProduct目录中(这只是一个比喻,实际并不存在)
当FreeMarker将上面的数据模型合并到模板中,就创建了下面的输出:
<html>
<head>
<title>Welcome!</title>
</head>
<body>
<h1>Welcome Big Joe!</h1>
<p>Our latest product:
<a href="products/greenmouse.html">green mouse</a>!
</body>
</html>
分享到:
相关推荐
### FreeMarker设计指南知识点 #### 一、快速入门 **模板+数据模型=输出** - **设计理念**: FreeMarker的设计理念是区分设计者与程序员的角色,让两者各司其职。设计者专注于页面的表现形式,例如HTML文件、图像...
一、FreeMarker基础 1. **模板语言**:FreeMarker使用模板语言,它是一种非编程语言,主要用于动态生成HTML或其他文本格式的文档。模板语言包含控制结构(如条件语句和循环)和变量表达式,它们与后台Java代码交互...
**FreeMarker设计指南** 是一份详尽的文档,旨在帮助开发者理解并有效地使用FreeMarker模板语言。这份指南涵盖了FreeMarker的核心概念、语法特性以及最佳实践。以下是一些关键知识点: 1. **基础概念**: - **模板...
通过阅读"FreeMarker设计指南.doc"文档和解压"freemarker-2.3.15.tar.gz"包中的源码和文档,你可以更深入地理解FreeMarker的工作原理,掌握其配置、使用和优化技巧,从而在实际项目中更好地运用这一强大的模板引擎。
### FreeMarker设计指南详解 #### 一、FreeMarker概述 FreeMarker是一个强大的模板引擎,用于将数据模型与表现层分离,使得设计者可以专注于页面布局和样式,而程序员则负责处理业务逻辑和数据处理。其核心思想是...
本指南将深入探讨Freemarker模板的开发,帮助你掌握其主要特性和用法。 1. **模板语法** Freemarker的模板语言基于简单的文本文件,使用特定的指令和表达式。例如,`<#if>`用于条件判断,`<#foreach>`用于循环,`$...
一、Freemarker基础 Freemarker是一个基于模板的语言,它与编程语言不同,它专注于数据模型和视图的分离。在Java应用中,你可以创建一个Freemarker模板,将数据模型注入其中,然后Freemarker会根据模板和数据生成...
其次,`freemarker 插件 安装提示.txt`文件很可能是MyEclipse编辑器中安装Freemarker插件的步骤指南。MyEclipse是一款集成开发环境,对于Java开发者来说非常方便。Freemarker插件的安装可以让开发者在IDE内直接编辑...
Freemarker是一个强大的模板引擎,常用于Web应用中的视图层开发,特别是在Java环境中,它作为MVC设计模式的一部分,负责生成动态HTML或其他格式的文本。本教程将深入讲解Freemarker的核心概念、语法和实际应用,帮助...
1. **FreeMarker设计指南.chm**:这个文档可能是Freemarker的官方设计指南,包含了详细的设计理念和使用技巧。 2. **freemarker.rar**:这个压缩包可能包含了Freemarker的API文档、示例模板或其他辅助学习材料,...
本压缩包集合了丰富的Freemarker学习资源,涵盖从基础到进阶的各种知识点,以下是这些文档中可能包含的详细内容: 1. **Freemarker中文手册.pdf**: 这份手册通常会详细介绍Freemarker的基本概念,如模板语言、...
这份"Freemarker操作指南(完全版)"包含了所有关于Freemarker的详细操作文档,是初学者掌握和进阶Freemarker的宝贵资料。 在开始学习之前,我们先了解Freemarker的基本概念。Freemarker是一个模板引擎,它允许...
1. **基础概念**:解释了FreeMarker模板语言的基本元素,如变量、控制结构(if/else、foreach)、内置函数和方法。 2. **数据模型**:描述如何将Java对象绑定到模板,以及如何访问对象的属性。 3. **模板设计**:...
通过这些资料,你可以全面了解并掌握Freemarker的使用,从基础语法到高级特性,从而在实际项目中灵活运用。无论是开发Web应用,还是构建复杂的邮件系统,Freemarker都能提供强大而简洁的解决方案。学习并熟练运用...
这份“Freemarker官方帮助文档”提供了全面的指南,帮助用户深入理解和有效地使用这个模板语言。 一、基础概念 1. 模板:Freemarker模板是纯文本文件,包含静态文本和变量(${...})或表达式(${...?...}),它们被...
除了以上基础用法,Freemarker还支持更多的高级特性,如宏定义、指令嵌套、模板继承等,使得模板设计更加灵活。在开发过程中,熟练掌握这些基本语法和指令,能够有效地利用Freemarker构建高效、易维护的动态页面。
手册覆盖了从基础到高级的各个主题,旨在帮助开发者有效地利用FreeMarker进行模板设计。 **1. 什么是FreeMarker?** FreeMarker是一个模板语言,它是独立于编程语言的,也就是说,它不直接与Java或任何其他后端...