freemarker中文手册(7)

2019-09-01 13:28

输出: a b c d e f g h i j a

b c d e f g h i j - -

----------------------------------------------------------- FreeMarker是一个非常优秀的模板引擎,这个模板引擎可用于任何场景,FreeMarker负责将数据模型中的数据合并到模板中,从而生成标准输出.界面开发人员只需要关于界面(也就是模板文件)的开发,而业务逻辑开发者只需要负责将需要显示的数据填入数据模型

-----FreeMarker负责合并数据模型和模板,从而生成标准输出. FreeMarker特别适应于MVC模式的Web应用,虽然FreeMarker具有一些编程能力,但这种编程能力非常有限,无法实现业务逻辑,只能提供一些数据格式的转换功能.因此,通常由Java程序准备要显示的数据,由FreeMarker模板引擎来生成页面,而FreeMarker模板则提供页面布局支持.

此外,FreeMarker也是与Web容器无关的,也就是FreeMarker并不一定需要运行在Web容器中:FreeMarker同样可以应用于非Web应用程序环境.而且,FreeMarker并不是只能生成HTML页面,它也可以生成各种文本,如XML,RTF,Java源代码等.

Struts2默认采用FreeMarker作为其模板文件,而Struts2所有的主题模板文件都是采用FreeMarker编写的,eclipse中的JSP,Java等模板文件也是采用FreeMarker技术. 1,在java程序中使用FreeMarker

FreeMarker的模板就是一个.ftl文本文件,在该文件中使用了一些FreeMarker的特别标记,这些标记会动态显示,或者控制程序输出,如下面的模板文件代码: ${name},你好!${msg}

这里类似于${}的就是动态的内容,称作\插值\

为了使用FreeMarker来将数据模型中的值合并到模板文件中,可按如下步骤进行:

1,创建Configuration实例,该实例负责管理FreeMarker的模板加载路

径,负责生成模板实例

2,使用Configuration实例来生成Template实例,同进需要指定使用的模板文件

3,填充数据模型,数据模型就是一个Map对象 4,调用Template实例的process方法完成合并.

下面是一个使用FreeMarker创建输出的Java程序,程序源代码如下: package lee; import java.util.*; import java.io.*;

import freemarker.template.*; public class HelloFreeMarker {

private Configuration cfg; public void init() throws Exception {

//初始化FreeMarker配置 //创建一个Configuration实例 cfg = new Configuration(); //设置FreeMarker的模版文件位置

cfg.setDirectoryForTemplateLoading(new File(\ }

public void process()throws Exception {

Map root = new HashMap(); root.put(\

root.put(\您已经完成了第一个FreeMarker的示例\ Template t = cfg.getTemplate(\

t.process(root, new OutputStreamWriter(System.out)); }

public static void main(String[] args)throws Exception {

HelloFreeMarker hf = new HelloFreeMarker(); hf.init(); hf.process(); } }

上面的代码创建了一个Map实例,这个Map将作为模板文件的数据模型,我们要使用FreeMarker必须导入freemarker.jar文件,FreeMarker的官hen

tre

t.t

ps/

:o

/u

/rfc网reefeo

mr

ag

re

k.

,虽然FreeMarker可以在Java程序中使用,但大部分

时候还是用来生成HTML页面.


freemarker中文手册(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:湖北蓝田股份有限公司财务报表分析

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: