Freemarker入門示例

Freemarker簡單入門實例 java

1.下載jar包地址:http://freemarker.org/ web

2.將下載的jar包導入到web工程中: 瀏覽器

3.代碼實現: app

package cn.quietor.freemarker;

import java.io.File;
import java.io.IOException;
import java.io.Writer;
import java.util.HashMap;
import java.util.Map;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

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

public class MyFMServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doPost(request, response);
    }

    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        //獲取模版文件路徑
        String templatePath = getServletContext().getRealPath("/WEB-INF/template");
        
        //設置模板引擎配置信息
        Configuration cfg = new Configuration();
        //加載模版文件
        cfg.setDirectoryForTemplateLoading(new File(templatePath));
        //設置對象包裝器
        cfg.setObjectWrapper(new DefaultObjectWrapper());
        
        //獲取一個模版文件對應的實例
        Template template = cfg.getTemplate("test.ftl");
        
        //建立數據模型
        Map<String, Object> paramMap = new HashMap<String, Object>();
        paramMap.put("user", "Jack");
        paramMap.put("age", 24);
        paramMap.put("birth", 1989);
        
        //將數據輸出到瀏覽器中顯示
        Writer writer = response.getWriter();
        try {
            template.process(paramMap, writer);
        } catch (TemplateException e) {
            System.out.println(e.getMessage());
        } finally {
            writer.close();
        }
    }

}

4.頁面輸出: ui

5.輸出結果: code

以上是freemarker在servlet中的簡單實現!有什麼問題但願你們多多指點。 對象

相關文章
相關標籤/搜索