读书人

freemarker的第一个例证

发布时间: 2012-10-27 10:42:25 作者: rapoo

freemarker的第一个例子

?freemarker的第一个例子
1.首先建一个工程(我建的是Web Project)

2.在WebRoot下建一个文件夹,命名为 freemarker , 再文件夹中建一个test.ftl文件,内容下如:
?<%@ page language="java" pageEncoding="GBK" contentType="text/html;charset=GBK"%>??
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>??
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">??
<html>??
? <head>??????
??? <title>My JSP 'index.jsp' starting page</title>??
?<meta http-equiv="pragma" content="no-cache">??
?<meta http-equiv="cache-control" content="no-cache">??
?<meta http-equiv="expires" content="0">??????
?<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">??
?<meta http-equiv="description" content="This is my page">??
? </head>??
? <body>??
?? The first test: ${persion}??
? </body>??
</html>?
?<%@ page language="java" pageEncoding="GBK" contentType="text/html;charset=GBK"%>
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
? <head>???
??? <title>My JSP 'index.jsp' starting page</title>
?<meta http-equiv="pragma" content="no-cache">
?<meta http-equiv="cache-control" content="no-cache">
?<meta http-equiv="expires" content="0">???
?<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
?<meta http-equiv="description" content="This is my page">
? </head>
? <body>
?? The first test: ${persion}
? </body>
</html>

?

?3.建一个类内容下如:

view plaincopy to clipboardprint?
package com.air.freemarker;??
?
import java.io.File;??
import java.io.FileOutputStream;??
import java.io.OutputStreamWriter;??
import java.io.Writer;??
import java.util.HashMap;??
import java.util.Map;??
?
import freemarker.template.Configuration;??
import freemarker.template.DefaultObjectWrapper;??
import freemarker.template.Template;??
import freemarker.template.TemplateExceptionHandler;??
?
public class Test {??
?
?public static void main(String[] args) throws Exception{??
? //模板路径??
? String dir = Test.class.getResource("/").getPath().split("WEB-INF")[0] + "freemarker";??
????
? Configuration cfg = new Configuration();??
????
? //加载freemarker模板文件??
? cfg.setDirectoryForTemplateLoading(new File(dir));??
????
? //设置对象包装器??
? cfg.setObjectWrapper(new DefaultObjectWrapper());??
????
? //设计异常处理器??
? cfg.setTemplateExceptionHandler(TemplateExceptionHandler.IGNORE_HANDLER);??
????
? //定义并设置数据??
? Map<String, String> data = new HashMap<String, String>();??
? data.put("persion", "小吴");??
????
? //获取指定模板文件??
? Template template = cfg.getTemplate("test.ftl");??
????
? //定义输入文件,默认生成在工程根目录??
? Writer out = new OutputStreamWriter(new FileOutputStream("test.html"),"GBK");??
????
? //最后开始生成??
? template.process(data, out);??
????
? System.out.println("successful");??
?}??
}?
package com.air.freemarker;

import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;
import java.io.Writer;
import java.util.HashMap;
import java.util.Map;

import freemarker.template.Configuration;
import freemarker.template.DefaultObjectWrapper;
import freemarker.template.Template;
import freemarker.template.TemplateExceptionHandler;

public class Test {

?public static void main(String[] args) throws Exception{
? //模板路径
? String dir = Test.class.getResource("/").getPath().split("WEB-INF")[0] + "freemarker";
?
? Configuration cfg = new Configuration();
?
? //加载freemarker模板文件
? cfg.setDirectoryForTemplateLoading(new File(dir));
?
? //设置对象包装器
? cfg.setObjectWrapper(new DefaultObjectWrapper());
?
? //设计异常处理器
? cfg.setTemplateExceptionHandler(TemplateExceptionHandler.IGNORE_HANDLER);
?
? //定义并设置数据
? Map<String, String> data = new HashMap<String, String>();
? data.put("persion", "小吴");
?
? //获取指定模板文件
? Template template = cfg.getTemplate("test.ftl");
?
? //定义输入文件,默认生成在工程根目录
? Writer out = new OutputStreamWriter(new FileOutputStream("test.html"),"GBK");
?
? //最后开始生成
? template.process(data, out);
?
? System.out.println("successful");
?}
}

?????

4.简单例子完成


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/wu209000/archive/2009/05/28/4221999.aspx

读书人网 >编程

热点推荐