[freemarker篇]04.简单介绍-基本数据类型
好几天没有更新博客了,最近一顿乱七八糟的忙!今天简单更新第四章,这里只能说是简单介绍,因为权威的还是需要看Freemarker的官方中文手册!
好几天没有更新博客了,最近一顿乱七八糟的忙!今天简单更新第四章,这里只能说是简单介绍,因为权威的还是需要看Freemarker的官方中文手册!
好几天没有更新博客了,最近一顿乱七八糟的忙!今天简单更新第四章,这里只能说是简单介绍,因为权威的还是需要看Freemarker的官方中文手册!
好几天没有更新博客了,最近一顿乱七八糟的忙!今天简单更新第四章,这里只能说是简单介绍,因为权威的还是需要看Freemarker的官方中文手册!
第一步:测试代码如下!
//基本数据类型测试
@Test
public void testDataType() {
// 1.创建数据模型
Map<String, Object> root = new HashMap<String, Object>();
root.put("now", new Date());
root.put("username", "胖先生");
// 3.生成HTML文件
fu.exportHtml("demo04.ftl", root, "基本数据类型.html");
}
第二步:模版代码,请仔细看看
<!DOCTYPE html>
<html>
<head>
<title>关于如何处理空值</title>
<meta charset="UTF-8">
</head> <body>
<#--定义变量-->
<h2>定义变量</h2>
<#assign username="张三"/>
${username}
<hr/>
<h2>定义了一个数字</h2>
<#assign num=10>
${num+11}
<#assign str="10"/>
${str+11}
<h3>值会完成覆盖</h3>
<#assign str=33/>
${str+11}
<hr/>
<#assign b=true/>
<h3>说明布尔型:不能直接输出数字或者字符串以外的类型,否则都会报错,需要转换为字符串才能输出
使用xxx?string可以完成对字符串的转换</h3>
<#--${b}-->
${b?string}
<h3>判断是否为空,??!</h3>
${(a.d)???string}
<hr/>
<h2>日期也不能直接输出,需要转换为字符串</h2>
${now?string("yyyy-MM-dd HH:mm:ss")}
<#--${now?string}没有为日期设定格式也会报错-->
<hr/>
<h2>以下显示了使用字符链接和插值的方式连接字符串</h2>
${"hello"+username}
<br/>
${"hello${username}"}
<hr/>
<h2>字符串转换为日期
data用来转换日期,datatime用来转换日期和时间,time用来转换时间</h2>
<#assign bir="1979-12-02 12:22:33"?date("yyyy-MM-dd HH:mm:ss")>
<#assign bir="1979-12-02 12:22:33"?datetime("yyyy-MM-dd HH:mm:ss")>
${bir} <h2>HTML转义字符</h2>
${"<br/>"?html}
<hr/>
<h2>需要查看中文手册,非常有用</h2>
[${"abcde"?left_pad(10,"--")}]
<h3>转换数据</h3>
${1.4?string(0)}
${1.8?int} </body>
</html>
第三步:测试结果如下
附录: 2013年中文手册
[freemarker篇]04.简单介绍-基本数据类型的更多相关文章
- iOS开发UI篇—Kvc简单介绍
ios开发UI篇—Kvc简单介绍 一.KVC简单介绍 KVC key valued coding 键值编码 KVC通过键值间接编码 补充: 与KVC相对的时KVO,即key valued observ ...
- iOS开发UI篇—Quartz2D简单介绍
iOS开发UI篇—Quartz2D简单介绍 一.什么是Quartz2D Quartz 2D是⼀个二维绘图引擎,同时支持iOS和Mac系统 Quartz 2D能完成的工作: 绘制图形 : 线条\三角形\ ...
- iOS开发拓展篇—CoreLocation简单介绍
iOS开发拓展篇—CoreLocation简单介绍 一.简介 1.在移动互联网时代,移动app能解决用户的很多生活琐事,比如 (1)导航:去任意陌生的地方 (2)周边:找餐馆.找酒店.找银行.找电影院 ...
- iOS开发多线程篇—多线程简单介绍
iOS开发多线程篇—多线程简单介绍 一.进程和线程 1.什么是进程 进程是指在系统中正在运行的一个应用程序 每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内 比如同时打开QQ.Xcod ...
- iOS开发UI篇—UITabBarController简单介绍
iOS开发UI篇—UITabBarController简单介绍 一.简单介绍 UITabBarController和UINavigationController类似,UITabBarControlle ...
- iOS开发UI篇—Modal简单介绍
iOS开发UI篇—Modal简单介绍 一.简单介绍 除了push之外,还有另外一种控制器的切换方式,那就是Modal 任何控制器都能通过Modal的形式展⽰出来 Modal的默认效果:新控制器从屏幕的 ...
- iOS开发数据库篇—SQLite简单介绍
iOS开发数据库篇—SQLite简单介绍 一.离线缓存 在项目开发中,通常都需要对数据进行离线缓存的处理,如新闻数据的离线缓存等. 说明:离线缓存一般都是把数据保存到项目的沙盒中.有以下几种方式 (1 ...
- iOS开发UI篇—UIWindow简单介绍
iOS开发UI篇—UIWindow简单介绍 一.简单介绍 UIWindow是一种特殊的UIView,通常在一个app中只会有一个UIWindow iOS程序启动完毕后,创建的第一个视图控件就是UIWi ...
- iOS开发多线程篇—NSOperation简单介绍
iOS开发多线程篇—NSOperation简单介绍 一.NSOperation简介 1.简单说明 NSOperation的作⽤:配合使用NSOperation和NSOperationQueue也能实现 ...
随机推荐
- 转载 在 Linux 虚拟机中手动安装或升级 VMware Tools
http://pubs.vmware.com/workstation-12/index.jsp?lang=zh_CN&topic=/com.vmware.ws.using.doc/GUID-0 ...
- INNO&&DELPHI
好久不弄delphi了,再次见到inno,居然不知所措~ 让人亲切的 var,又见到了.而如今,到处可见. 整目录复制 Flags: igNoreversion recursesubdirs crea ...
- 高性能的JavaScript -- 读书笔记
高性能的JavaScript 一. 加载和运行 将脚本放在底部 脚本下载解析执行时,页面已经加载完成并显示在用户面前 成组脚本 减少外部脚本文件数量,整合成一个文件 延迟脚本 动态脚本元素 ...
- HTML要点(五)<iframe>标签
浏览器支持:全部支持 定义和用法 iframe 元素会创建包含另外一个文档的内联框架(即行内框架). HTML 与 XHTML 之间的差异 在 HTML 4.1 Strict DTD 和 XHTML ...
- jquery表格伸展
1:效果图: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org ...
- Queue and Message
#ifndef __QUEUE_H__ #define __QUEUE_H__ #include <stdint.h> #include <stdlib.h> #include ...
- SCCM2007
Active Directory系统组发现:此方法按照上次运行发现方法时 Active Directory 中的响应返回对象,可发现活动目录OU.全局组.通用组.嵌套组.非安全组. Active Di ...
- Windows性能计数器2
判断瓶颈 Ø 判断应用程序的问题 如果系统由于应用程序代码效率低下或者系统结构设计有缺陷而导致大量的上下文切换(context switches/sec显示的上下文切换次数太高)那么就会占用大量的系统 ...
- 在XAF应用程序使用现有的数据库?
https://documentation.devexpress.com/#Xaf/CustomDocument3061
- php heredoc 与 nowdoc
php heredoc 与 nowdoc heredoc 结构 heredoc 句法结构:<<<.在该运算符之后要提供一个标识符,然后换行.接下来是字符串本身,最后要用前面定义的标识 ...