首页 > 代码库 > freemark生成静态页面
freemark生成静态页面
到freemark的官方网站下载:
http://sourceforge.net/projects/freemarker/files/freemarker/2.3.20/freemarker-2.3.20.tar.gz/download
建一个web project,如下:
建成的项目结构如下:
模板文件如下(test.ftl):
<!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>
Test.java:
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 realpath = System.getProperty("user.dir"); File savefile = new File(new File(realpath), "WebContent/WEB-INF/freemark"); String dir = savefile.getAbsolutePath(); Configuration cfg = new Configuration(); //加载freemarker模板文件 cfg.setDirectoryForTemplateLoading(new File(dir)); //设置对象包装器 cfg.setObjectWrapper(new DefaultObjectWrapper()); //设计异常处理器 cfg.setTemplateExceptionHandler(TemplateExceptionHandler.IGNORE_HANDLER); //定义并设置数据 Map<String, String> data = http://www.mamicode.com/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"); } }
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。