作者:jzcpojwmds_652 | 来源:互联网 | 2023-10-13 00:13
下面演示一个简单的使用项目过程:1.使用myeclipse创建一个web项目testFM2.把下载到的jar包(freemarker-2.3.9.jar)放到WebRootWE
下面演示一个简单的使用项目过程:
1. 使用myeclipse创建一个web项目testFM
2.
把下载到的jar包(freemarker-2.3.9.jar)放到/WebRoot/WEB-INF/lib目录下。下载地址:http://freemarker.sourceforge.net/freemarkerdownload.html (注:官方网站.org的经常打不开)
3.
在WebRoot下面新建templates文件包,然后在里面新建扩展名为ftl的模板。
a)
创建hello.ftl内容如下:
hello
${user}!
4. 在src目录下创建example包 和Hello.java文件,代码如下:
package example;
import
java.io.*;
import java.util.*;
import javax.servlet.ServletException;
import javax.servlet.http.*;
import freemarker.template.*;
public class Hello extends HttpServlet{
private Configuration
cfg;
public void init()
{
//初始化FreeMarker配置
//创建一个Configuration实例
cfg = new
Configuration();
//设置FreeMarker的模版文件位置
cfg.setServletContextForTemplateLoading(getServletContext(),"templates");
}
public void doGet(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException
{
//建立数据模型
Map root = new HashMap();
//放入对应数据key
value
root.put("user","csdn");
//取得模版文件
Template t
=cfg.getTemplate("hello.ftl");
//开始准备生成输出
//使用模版文件的charset作为本页面的charset
//使用text/html MIME-type
response.setContentType("text/html; charset=" +
t.getEncoding());
PrintWriter out =
response.getWriter();
//合并数据模型和模版,并将结果输出到out中
try
{
t.process(root,out);//
用模板来开发servlet可以只在代码里面加入动态的数据
}
catch(TemplateException e)
{
throw new
ServletException("处理Template模版中出现错误", e);
}
}
}
5.配置web.xml 代码如下:
version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
Hello
example.Hello
Hello
*.do
index.html
6.在WebRoot下面新建引导页面index.html,代码如下:
charset=utf-8">
点击下面链接看看效果:
href="hello.do">调用Hello模板 7.把testFM项目部署到tomcate并启动服务。
8.打开浏览器,输入地址:http://localhost:8080/testFM/
9.点击调用Hello模板
链接,如果出现hello csdn!则说明模板调用成功了!
freemarker实例2,布布扣,bubuko.com