freemarker简单的例子

本文介绍如何使用Freemarker模板引擎将动态数据填充到HTML模板中,包括配置环境、编写测试类及运行生成带有动态内容的HTML文件。

1、新建一个web工程,然后下载并引入freemarker-2.3.16.jar。

2、在E:\demo\freemarkerTes目录下新建:test.html文件(文件内容如下:)

3、编写一个测试类如下,执行就可以生成如下文件:test_result.html(文件内容如下:)

======================================================================

package com;

import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;
import java.io.Writer;
import java.util.HashMap;
import java.util.Map;

import freemarker.template.Configuration;
import freemarker.template.DefaultObjectWrapper;
import freemarker.template.Template;

public class FreeMarker {
 public static void main(String[] args) throws Exception {
     Configuration cfg = new Configuration();
   //从什么地方加载freemarker模板文件
     cfg.setDirectoryForTemplateLoading(new File("E:\\demo\\freemarkerTest"));
   //定义Template对象 
     cfg.setObjectWrapper(new DefaultObjectWrapper());
     //定义输出   
     Template temp = cfg.getTemplate("test.html");
    
     Map root = new HashMap();
     root.put("user", "davide");
     Map latest = new HashMap();
     root.put("latestProduct", latest);
     latest.put("url", "products/greenmouse.html");
     latest.put("name", "green mouse");
    
     Writer out = new OutputStreamWriter(new FileOutputStream("E:/demo/freemarkerTest/test_result.html"));
     //****最重要的就是这一步,动态加载“世界,你好”到abc所在的位置 .
     temp.process(root, out);
     out.flush();
     out.close();
  }

}


 

=========================================================================
2、 执行前的test.html

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


 

===============================================================================

3、执行后的test_result.html

<html>
<head>
<title>Welcome!</title>
</head>
<body>
<h1>Welcome davide!</h1>
<p>Our latest product:
<a href="products/greenmouse.html">green mouse</a>!
</body>
</html>  


 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值