您的位置:首页 > 其它

FreeMarker 基本配置(一)

2015-07-11 17:03 260 查看

freemarker 版本

官网下载地址 http://freemarker.org/freemarkerdownload.html

当前测试所用版本为:freemarker-2.3.23

文件结构



1. 模板文件:test02.ftl

<html>
<head>
<title>Welcome!</title>
</head>
<body>
<h1>Welcome ${user}!</h1>
<p>Our latest product:
<a href="${latestProduct.url}">${latestProduct.name}</a>!
</body>
</html>


2. Java 测试类文件:Test.java

package com.freemarker.test02.base;

import freemarker.template.*;
import java.util.*;
import java.io.*;

public class Test {

public static void main(String[] args) throws Exception {

// 创建 Freemarker 配置实例
Configuration cfg = new Configuration(Configuration.VERSION_2_3_23);
// 指定模板文件从何处加载的数据源,这里设置成一个文件目录。
cfg.setDirectoryForTemplateLoading(new File("templates"));
cfg.setDefaultEncoding("UTF-8");
// 简单地重新抛出异常; 这应该在大多数生产系统中使用。
cfg.setTemplateExceptionHandler(TemplateExceptionHandler.RETHROW_HANDLER);

// 创建一个数据模型
Map root = new HashMap();
root.put("user", "Big Joe");
Map latest = new HashMap();
root.put("latestProduct", latest);
latest.put("url", "products/greenmouse.html");
latest.put("name", "green mouse");

// 获取模板(使用内部缓存)
Template temp = cfg.getTemplate("test02.ftl");

// 合并数据模型模板
Writer out = new OutputStreamWriter(System.out);
temp.process(root, out);
out.flush();
out.close();
// 注意: ------------
// 为了简单起见,这里压制了异常(在方法签名中声明了异常,译者注),而在正式运行的产品中不要这样做。
}
}


运行结果

<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>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: