`
baobeituping
  • 浏览: 1043276 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

FreeMaker实现静态化技术(1)【Java版本】

阅读更多

FreeMaker是一个优秀的模板引擎,负责将数据合并到模板中,从而生成标准输出。FreeMaker非常适合用于MVC的WEB应用中,对于FreeMaker而言,等式:模板+数据模型=输出

下面我们开始编写第一个JAVA工程的程序

首先在工程SRC目录下新建一个template文件夹,然后新建一个test.ftl文件。

我的template文件夹的目录是“D://workspace//FreeMaker//WebRoot//WEB-INF//classes//template”

1.test.ftl

${name},您好!${msg}

2.新建一个HelloWorld.java

package com.test;

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

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

public class HelloWorld {

 /**
  * @param args
  */
 private Configuration cfg;
 public void init() throws Exception
 {
  cfg = new Configuration();
  cfg.setDirectoryForTemplateLoading(new File("D://workspace//FreeMaker//WebRoot//WEB-INF//classes//template"));//加载模板文件的目录
  
 }
 public void process() throws Exception
 {
  Map root = new HashMap();
  root.put("name","张三");//对应模板文件中的${name}
  root.put("msg", "哦也!");//对应模板文件中的${msg}
  Template t = cfg.getTemplate("test.ftl");
  t.process(root,new OutputStreamWriter(System.out));
 }
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  HelloWorld h = new HelloWorld();
  try {
   h.init();
   h.process();
  } catch (Exception e) {
   e.printStackTrace();
  }

 }

}

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics