今天下午才接触到Freemarker这个新组件,同样,它也是java开源代码之一。
经过今天的初步使用,感觉它的作用是减轻编写Servlet的工作量的。我想它也应该应用在jsp页面里面。有人说jsp还要经过转换才变成Servlet才能运行,比直接写servlet运行要慢,我觉得这种担心是多余的,因为jsp比servlet只慢一次(第一次请求为编译,之后就把servlet代码驻留在服务器了)。
我作Freemarker的试验的步骤是:
1,下载freemarker,address is :http://www.freemarker.org/freemarkerdownload.html
2,release it ,然后把freemarker-2.3.8lib下的freemarker加入到eclipse.
3.在WEB-INF/下面新建templates文件包,然后在里面新建扩展名为ftl的模板。
4.新建 servlet,in it write your code like this:
void init ()throw ServletException{
cfg = new Configuration();
cfg.setServletContextFromTemplateLoading(getServletContext,"WEB-INF/test.ftl");
}
public void doGet(HttpServletRequest request,HttpServlsetResponse response)throw ServletException ,IOException{
Map root = new HashMap();
root.put("message",“hello world”);
Template t =cfg.getTemplate("text/html");
PrintWriter out = response.getWriter();
try{
t.prosess(root,out);//看到了吧?用模板来开发servlet可以让我们用一句代码代替一堆代码。
}catch(TemplateException e ){ e.print...}
}