文档章节

FreeMarker在eclipse中的入门例子

oecp
 oecp
发布于 2011/04/26 09:39
字数 575
阅读 919
收藏 2

今天海浪为大家分享一个FreeMarker在eclipse中的入门例子。

一、在eclipse中创建FreeMarker模板
FreeMarker中模板的概念就是:包含一些由${…}包围的特殊代码的文件。这些特殊代码是FreeMaker指令。
FreeMarker 模板以ftl后缀命名 如本文所示的:
user.ftl
${user.userName}
${user.userPassword}

二、在eclipse中创建FreeMarker数据模型
FreeMarker数据模型:存在于计算机内存中的一种结构,由开发人员创建,向模板提供信息。
注意:FreeMarker数据模型不是文本文件。FreeMarker的数据模型是树状结构的。
如本文所示的:
User.java
  public class User{
 private userName;
 private userPassword;
 
    …(省略getter setter方法) 
}
User对象的树状模型如:
(root)
  |+-user
    |+-userName=“张三”
|+-userPassword=“123”
 要访问user对象的userName属性,可以通过点操作符号如:user.userName

三、在eclipse中填充FreeMarker数据模型
FreeMarker的根对象使用Map建立的。将创建好的User对象已键-值对得形式封装到Map中如:
 Map<?,?> root=new HashMap<?,?>();
 root.put(“user”,user);

  至此,我们在eclipse中已经完成了大部分的前期准备工作。
FreeMarker工作原理中讲到: 数据+模型=输出,那么我们该如何获得想要的结果呢。
也许你已经想到了,创建FreeMarker的模板引擎,解析模板。步骤如下:
1.创建和配置Configuration对象,Configuration对象实例负责管理FreeMarker模板的路径加载及模板的创建和缓存。通常应用程序的生命周期中只会创建一个Configuration实例。
Configuration config=new Configuration();
config.setDirectoryForTemplateLoading(new File(“templates”));
config.setObjectWrapper(new DefaultObjectWraaper());

2.获取模板实例,即通过Configuration实例获取Template实例,调用getTemplate()方法。
Template template=config.getTemplate(templateName);

3.合并数据模型和模板
通过调用Template实例的process()方法合并数据模型和模板,方法接受一个数据模型的根和一个writer作为参数,将结果输出到Writer。 为简化起见,本例输出到控制台
Writer out=new OutputStreamWriter(System.out);
template.process(root , out);
out.flush();
out.close();
好了,通过上面的讲解,您已经对FreeMarker的应用有了一定的了解。接下来大家可以根据http://www.oecp.cn/hi/hailang/blog/200创建的Freemarker用例,独立创建一个属于自己的Freemarker用例。

本文转载自:http://www.oecp.cn/hi/hailang/blog/200

oecp
粉丝 16
博文 58
码字总数 27555
作品 0
青岛
私信 提问
FreeMarker在eclipse中的入门例子

刚接触FreeMarker时,只是简单的了解FreeMarker的一些概念及工作原理,至于如何使用FreeMarker还不是非常清楚。随着学习的深入,才渐渐对FreeMarker有了更深入的理解。本文将从基础应用着手,...

oecp
2011/05/16
647
0
Eclipse安装Freemarker Editor插件

Eclipse安装Freemarker Editor插件 在下面网址里下载freemarker-ide: http://sourceforge.net/projects/freemarker-ide/files/ http://sourceforge.net/projects/freemarker-ide/files/ 下载......

风中帆
2015/02/10
13.3K
1
Eclipse 的 FreeMarker 插件太烂了

目前尝试了 Eclipse 下的两款编辑 FreeMarker 脚本的插件: Freemarker IDE FreeMarker Eclipse Plugin 但事实上好像是同一个东西来着,功能过于简单,而且还不支持新版本 FreeMarker 的一些...

红薯
2009/05/17
10.3K
12
分享Struts2与Freemarker的配置方法

刚才在OECP社区看到一篇文章,《Struts2与Freemarker的配置方法》觉得很好,所以转发给大家分享一下。 Freemarker是模板引擎,也可以说是一种表现层的框架,它有自己的模板指令,开发者如果不...

oecp
2011/05/16
499
0
Struts2与Freemarker的配置方法(附源码和插件)

Freemarker是模板引擎,也可以说是一种表现层的框架,它有自己的模板指令,开发者如果不熟悉这些语法,很难进行表现层的开发。Struts2框架技术对Freemarker做了很好的支持,开发人员只要熟悉...

oecp
2011/04/28
450
0

没有更多内容

加载失败,请刷新页面

加载更多

创龙基于TI TMS320C6748(定点/浮点DSP C674x) + Xilinx Spartan-6 FPGA处理器规格书

由广州创龙自主研发的SOM-TL6748F核心板是一款定点/浮点DSP C674x + Xilinx Spartan-6 FPGA工业级双核核心板,66mm*38.6mm,功耗小、成本低、性价比高。采用沉金无铅工艺的8层板设计,专业的...

Tronlong创龙
26分钟前
6
0
DataV教你如何给可视化应用一键美颜

如果你平时经常接触数据统计、数据展示和决策分析,相信你对DataV一定有所了解。DataV作为一站式实时数据可视化应用搭建工具,拥有图形化、拖拽式、近乎零代码的使用体验,能帮助大家轻松搭建...

阿里云官方博客
29分钟前
6
0
Apache Flink 1.9.0版本新功能介绍

摘要:Apache Flink是一个面向分布式数据流处理和批量数据处理的开源计算平台,它能够基于同一个Flink运行时,提供支持流处理和批处理两种类型应用的功能。目前,Apache Flink 1.9.0版本已经...

大涛学长
29分钟前
7
0
网站变成灰色CSS代码

为方便站点哀悼,特提供css滤镜代码,以表哀悼。以下为全站CSS代码。 [css]html { filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1); }[/css] 使 用方法:这段代码可以变网...

前端老手
35分钟前
4
0
bootstrap4

临时接手个bootstrap4的项目 ,作下笔记 一.栅格系统 相对于原来的bs3,bs4具有了范围更大的适应区间.在过去的bs3中的xs sm md lg 中,bs4又增加了一个xl这个区间,为超大屏幕做出了适应。  ...

东东笔记
35分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部