1. 程式人生 > >在java web專案中配置freemarker

在java web專案中配置freemarker

1.引入freemarker jar包,注意要把jar包放到lib中,否則啟動報錯

2.編寫模版檔案 方括號低版本的不支援

3.編寫處理模板的servlet

    private Configuration _config;

    public void init() {
        // 初始化Freemarker配置
        _config = new Configuration();
        // 設定Freemarker模板檔案的位置
        _config.setServletContextForTemplateLoading(this.getServletContext(),
                "templates");
    }

    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        // 資料
        Map<String,Object> root = new HashMap<String,Object>();
        root.put("author", "zcx");
        List<String> hobbies = new ArrayList<String>();
        hobbies.add("sing");
        hobbies.add("dance");
        hobbies.add("paint");
        root.put("hobbies", hobbies);
        // 獲取模板
        Template t = _config.getTemplate("test.ftl");

        // 準備輸出, 使用模板的編碼作為本頁的charset
        response.setContentType("text/html; charset=" + t.getEncoding());
        PrintWriter out = response.getWriter();

        try {
            // 在模板中加入動態資料
            t.process(root, out);
        } catch (freemarker.template.TemplateException e) {
            throw new ServletException("處理Template模版中出現錯誤", e);
        }
    }

4.執行效果如下