FreeMarker的认识及实例(一)
来源:互联网 发布:数控车床编程语言 编辑:程序博客网 时间:2024/05/17 12:48
一.Freemarker简介
1.Freemarker是一个“模板引擎”,,也可以说是一个基于模板技术的生成文本输出的一个通用工具. 2.FreeMarker被设计用来生成HTML Web页面,特别是基于MVC模式的应用程序 3.FreeMarker与容器无关,因为它并不知道HTTPServlet;FreeMarker同样可以应用于非Web应用程序环境。 4.FreeMarker更适合作为Model2框架(如Struts)的视图组件,你也可以在模板中使用JSP标记库
二.Freemarker用法
①、文本,直接输出的部分
②、注释,即<#–…–>格式不会输出
③、FTL指令:FreeMarker指令,和HTML标记类似,名字前加#予以区分,不会输出
④、插值(Interpolation):即${..}或者#{..}格式的部分,将使用数据模型中的部分替代输出
2.FLT标签
开始标签:<#directivename parameters>结束标签:</#directivename>空标签: <#directivename parameters />
3.FreeMarker的插值有如下两种类型
1、通用插值:${expr}2、数字格式化插值:#{expr}或者#{expr;format}
4.表达式
表达式是FreeMarker的核心功能。表达式放置在插值语法(${…})之中 时,表面需要输出表达式的值,表达式语法也可以与FreeMarker标签结合, 用于控制输出1、直接指定值 a、字符串: ${"我的文件保存在d:\\盘"}; b、数值 c、布尔值 d、日期型(FreeMarker支持date、time、 datetime三种类型,这三种类型的值无法直接指定,通常需要借助字符串的date、time、datetime三个内建函数进行转换才可以 ) <#assigntest1 = "2015-01-22"?date("yyyy-MM-dd")/>; <#assign test2="16:34:43"?time("HH:mm:ss") />; <#assigntest2 = "2015-01-2217:23:45"?datetime("yyyy-MM-dd HH:mm:ss") /> ${test1?string.full} e、集合 集合以方括号包括,各集合元素之间以英文逗号(,)分隔,看如下的示例: <#list[11,12,13,14,15] as x> ${s}; </#list> f、Map集合 Map对象使用花括号包括,Map中的key-value对之间以英文冒号(:)隔开,多组key-value对之间以英文逗号(,)隔开: <#assign score = {"语文":78,"数学":83,"Java":89} > <#list score?key as x> ${x}--->${score[x]}; </#list> <spanstylespanstyle="font-family:sans-serif,arial,verdana,trebuchet ms;line-height:1.6em"> </span> 2、输出变量值 FreeMarker的表达式输出变量时,这些变量可以是顶层变量,也可以是Map对象中的变量,还可以是集合中的变量,并可以使用点(.)语法来访问Java对象的属性 a、顶层变量 Map root = newHashMap(); root.put("name","wenchao"); 对应顶层变量,直接使用${variableName}来输出变量值,变量名只能是数字、字母、下划线、$、@和#的组合,并不能以数字开头 b、输出集合元素 如果需要输出集合元素,则可以根据集合元素的索引来输出元素。集合元素的索引以方括号指定。 假设有集合对象为:["星期一","星期二","星期三","星期四","星期五","星期六"],该集合对象名为week,如果需要输出星期三,则可以使用如下语法:${week[2]}(索引从零开始) c、输出Map元素 这里的Map对象可以是直接HashMap的实例,甚至包括JavaBean实例,对应JavaBean实例,我们一样可以把其当成属性为key,属性为value的Map实例
1 0
- FreeMarker的认识及实例(一)
- FreeMarker的认识及实例(二)
- FreeMarker学习笔记(一) 初步认识Freemarker的模板
- FreeMarker学习笔记(一) 初步认识Freemarker的模板
- freemarker的优缺点及简单实例
- FreeMarker简介及快速入门(一)
- freemarker的使用以及认识
- freemarker基本语法及实例
- 认识freemarker
- FreeMarker使用Template生成可变参数的json(一),及访问Template出现not found
- FreeMarker模板文件的组成及基本语法详解(一)
- FreeMarker模板文件的构成及大约语法详解(一)
- FreeMarker的常用指令(一)
- freemarker常见的一些用法(一)
- 初步认识freemarker以及文件的操作
- AJAX的认识(一)
- background的认识(一)
- KotLin的认识(一)
- Delphi代码标准文档
- Hadoop的Map侧join
- 导航栏特效(活动)
- jascript base64编解码,好东西
- 20. Valid Parentheses [easy] (Python)
- FreeMarker的认识及实例(一)
- 制作圆形头像
- mingw中安装 rtmpdump
- 安卓屏幕知识
- yii2框架-多语言版本切换(十三)
- TextView加文字阴影
- 并发和并行的区别
- 数学考试 1
- top命令详解