FreeMarker学习交流.pptx

FreeMarker学习交流.pptx

ID:48095522

大小:276.14 KB

页数:34页

时间:2020-01-13

FreeMarker学习交流.pptx_第1页
FreeMarker学习交流.pptx_第2页
FreeMarker学习交流.pptx_第3页
FreeMarker学习交流.pptx_第4页
FreeMarker学习交流.pptx_第5页
资源描述:

《FreeMarker学习交流.pptx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、FreeMarker学习交流Warner2011/10/241、FreeMarker简介:2、FreeMarker插件安装:3、基本语法:4、自定义指令:5、从Cookie、Session、Request中取值:6、注意事项:主要内容:FreeMarker是一个模板引擎,一个基于模板生成文本输出的通用工具,使用纯Java编写;FreeMarker被设计用来生成HTMLWeb页面,特别是基于MVC模式的应用程序;FreeMarker具有一些编程的能力,但通常由Java程序准备要显示的数据,由FreeMarker生成页面,通过模板显示准备的数据;FreeMarker不是一个Web应用框架,而适合

2、作为Web应用框架一个组件;FreeMarker与容器无关,因为它并不知道HTTP或Servlet;FreeMarker同样可以应用于非Web应用程序环境;FreeMarker更适合作为Model2框架(如Struts)的视图组件,你也可以在模板中使用JSP标记库;FreeMarker是免费的。FreeMarker简介:1、进入MyEclipse插件安装界面:FreeMarker插件安装:2、选择Searchfornewfeaturestoinstall,点击“Next”:3、点击“NewLocalSite…”,选择自己已经下载完成的安装包(也可在线安装,但自己在线安装没有试验成功):4、接

3、下来就按照要求一直“Next”,直到安装完成,重启MyEclipse即可。1、使用${xxx}获取值;如:欢迎${username}登录!说明:这个模板存放在Web服务器上,看上去像是静态的HTML页面。但是不管何时,只要有人访问这个页面时,FreeMarker将会介入执行,然后动态转换模板,用最新的数据内容替换${…}中的部分,默认取request中的值。FreeMarker基本语法:2、数据模型像是树状结构时,可根据“.”获取下层的值,如:层次结构如图:可以使用${user}和${latestProduct.name}取得user和latestProduct下n

4、ame的值;3、常用指令:A、If-eseif-else指令:<#ifx<0>aaaaaaaaaaaaa.<#elseifx>0>bbbbbbbbbbbbb<#else>ccccccccccccccc.FreeMarker标签跟Struts2的标签差不多,不过FreeMarker使用#开始,elseif与esle都在if标签内部。B、list指令:<#listusersasuser>${user.name}users为结果集中的一个数组,user相当于其中的某一个数值。C、include指令:该指令与struts2中include标签相同,如:<#include"

5、/copyright_footer.html">D、定义默认值指令“!”:当需要给某个取值定义一个默认值时,则可以使用“!”对其进行设置(当取值不存在时,则使用默认值),如:

Welcome${username!“Anonymous”}!

当username值不存在时,则使用“Anonymous”代替。说明:关于多级访问的变量,比如animals.python.price,书写代码:animals.python.price!0,仅当animals.python存在而仅仅最后一个子变量price可能不存在(这种情况下我们假设价格是0)。如果animals或者python不存在,那

6、么模板处理过程将会以“未定义的变量”错误而停止。为了防止这种情况的发生,可以这样来书写代码(animals.python.price)!0。这种情况下当animals或python不存在时表达式的结果仍然是0。对于??也是同样用来的处理这种逻辑的:animals.python.price??对比(animals.python.price)??来看。E、询问变量是否存在指令“??”:当我们需要对某变量进行判断时,可以使用“??”进行判断,如:<#ifuser??>

Welcome${user}!

当且仅当user变量存在时,则会执行<#if>中的语句;F、其他:a、自

7、定义序列:指定一个文字的序列,使用逗号来分隔其中的每个子变量,然后把整个列表放到方括号中。例如:<#list["winter","spring","summer","autumn"]asx>${x}将会打印出:winterspringsummerautumnb、在字符串中插入表达式的值:如果要在字符串中插入表达式的值,可以在字符串的文字中使用${…}。${...}的作用和在文本区的是相同的。假

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。