freemarker的第一个例证

freemarker的第一个例子

 freemarker的第一个例子
1.首先建一个工程(我建的是Web Project)

2.在WebRoot下建一个文件夹,命名为 freemarker , 再文件夹中建一个test.ftl文件,内容下如:
 <%@ page language="java" pageEncoding="GBK" contentType="text/html;charset=GBK"%>  
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>  
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
<html>  
  <head>      
    <title>My JSP 'index.jsp' starting page</title>  
 <meta http-equiv="pragma" content="no-cache">  
 <meta http-equiv="cache-control" content="no-cache">  
 <meta http-equiv="expires" content="0">      
 <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">  
 <meta http-equiv="description" content="This is my page">  
  </head>  
  <body>  
   The first test: ${persion}  
  </body>  
</html> 
 <%@ page language="java" pageEncoding="GBK" contentType="text/html;charset=GBK"%>
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>   
    <title>My JSP 'index.jsp' starting page</title>
 <meta http-equiv="pragma" content="no-cache">
 <meta http-equiv="cache-control" content="no-cache">
 <meta http-equiv="expires" content="0">   
 <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
 <meta http-equiv="description" content="This is my page">
  </head>
  <body>
   The first test: ${persion}
  </body>
</html>

 

 3.建一个类内容下如:

view plaincopy to clipboardprint?
package com.air.freemarker;  
 
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;  
import freemarker.template.TemplateExceptionHandler;  
 
public class Test {  
 
 public static void main(String[] args) throws Exception{  
  //模板路径  
  String dir = Test.class.getResource("/").getPath().split("WEB-INF")[0] + "freemarker";  
    
  Configuration cfg = new Configuration();  
    
  //加载freemarker模板文件  
  cfg.setDirectoryForTemplateLoading(new File(dir));  
    
  //设置对象包装器  
  cfg.setObjectWrapper(new DefaultObjectWrapper());  
    
  //设计异常处理器  
  cfg.setTemplateExceptionHandler(TemplateExceptionHandler.IGNORE_HANDLER);  
    
  //定义并设置数据  
  Map<String, String> data = new HashMap<String, String>();  
  data.put("persion", "小吴");  
    
  //获取指定模板文件  
  Template template = cfg.getTemplate("test.ftl");  
    
  //定义输入文件,默认生成在工程根目录  
  Writer out = new OutputStreamWriter(new FileOutputStream("test.html"),"GBK");  
    
  //最后开始生成  
  template.process(data, out);  
    
  System.out.println("successful");  
 }  

package com.air.freemarker;

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;
import freemarker.template.TemplateExceptionHandler;

public class Test {

 public static void main(String[] args) throws Exception{
  //模板路径
  String dir = Test.class.getResource("/").getPath().split("WEB-INF")[0] + "freemarker";
 
  Configuration cfg = new Configuration();
 
  //加载freemarker模板文件
  cfg.setDirectoryForTemplateLoading(new File(dir));
 
  //设置对象包装器
  cfg.setObjectWrapper(new DefaultObjectWrapper());
 
  //设计异常处理器
  cfg.setTemplateExceptionHandler(TemplateExceptionHandler.IGNORE_HANDLER);
 
  //定义并设置数据
  Map<String, String> data = new HashMap<String, String>();
  data.put("persion", "小吴");
 
  //获取指定模板文件
  Template template = cfg.getTemplate("test.ftl");
 
  //定义输入文件,默认生成在工程根目录
  Writer out = new OutputStreamWriter(new FileOutputStream("test.html"),"GBK");
 
  //最后开始生成
  template.process(data, out);
 
  System.out.println("successful");
 }
}

     

4.简单例子完成


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/wu209000/archive/2009/05/28/4221999.aspx