在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.執行效果如下