free marker 生成 html,利用freemaker生成静态页面

FreeMarker是一个模板引擎,一个基于模板生成文本输出的通用工具,使用纯Java编写

FreeMarker被设计用来生成HTML Web页面,特别是基于MVC模式的应用程序

虽然FreeMarker具有一些编程的能力,但通常由Java程序准备要显示的数据,由FreeMarker生成页面,通过模板显示准备的数据(如下图)

FreeMarker不是一个Web应用框架,而适合作为Web应用框架一个组件

FreeMarker与容器无关,因为它并不知道HTTP或Servlet;FreeMarker同样可以应用于非Web应用程序环境

FreeMarker更适合作为Model2框架(如Struts)的视图组件,你也可以在模板中使用JSP标记库

我们可以使用freemaker制作需要生成的静态页面样式。然后可利用动态绑定数据,将数据绑定到

一个simpleHash中后,使用template.process()生成一张静态页面。或者其他页面的。

然后写到文件系统中。利用这种机制我们就可以轻松的实现模板生成静态页面了。

public static String xmlGenerate(TableDecorator table)throws Exception{

StringWriter writer = new StringWriter();

FreemakerEngine engine = FreemakerEngine.getInstance();

freemarker.template.Template template = engine.getTemplate("hibernate.ftl");

SimpleHash model = new SimpleHash();

model.put("table", table);

template.process(model, writer);

ByteArrayOutputStream os = new ByteArrayOutputStream();

os.write(writer.getBuffer().toString().getBytes());

os.flush();

os.close();

return new String(os.toByteArray());

}

posted on 2007-03-20 11:17 安文豪 阅读(2796) 评论(0)  编辑  收藏

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值