Servlet中使用Freemarker案例

首先需要引入 freemarker.jar 包文件 [ 点击下载]

下面我就直接把代码贴出来,需要注意的是引入的模板存放的目录路径

test.ftl 模板文件内容如下

<html>
    <head>
      <title>FreeMarker Example Web Application 1</title>
    </head>
    <body>
      ${message}
    </body>
</html>

java代码如下

package demo;

import java.util.*;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import freemarker.template.*;

/**
 * @author ZhouMengShun
 */
public class HelloServlet extends HttpServlet {

    private Configuration cfg; 

    public void init() {

        //创建FreeMarker配置实例
        Configuration cfg = new Configuration();

        //设置freemarker模板目录,如下 templates是 freemarker模板存放的目录径
        cfg.setServletContextForTemplateLoading(getServletContext(),"WEB-INF/templates");
    }

    protected void doGet(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {

        Map root = new HashMap();//创建数据模型
        root.put("message", "Hello World!");//设置数据

        //加载模板文件 fmdemo.ftl 
        Template t = cfg.getTemplate("test.ftl");

        Writer out=new BufferedWriter(new OutputStreamWriter(resp.getOutputStream(), t.getEncoding()));

        resp.setContentType("text/html; charset=" + t.getEncoding());

        try {
            t.process(root, out);
            out.flush();

        } catch (TemplateException e) {

        }

    }


}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值