Freemarker中的日期转换

1. 把数字类型表示的日期,转换成datetime类型,字符串输出。
${item.time?number_to_datetime},默认的格式是“yyyy-MM-dd hh:mm:ss”。

在调用之前,可以手动设置datetime的格式,如: <#setting datetime_format="yyyy年MM月dd日"/>

2.把date类型表示的日期,转换成字符串格式,字符串输出。
${item.time?string("yyyy年MM月dd日")}

3.如果item.time为null,Freemarker会报错,比较烦人。
于是,我写了个通用的日期工具函数:

<#function number_to_ymdhms date>

<#if date != null>

<#setting datetime_format="yyyy-MM-dd hh:mm:ss"/>

<#return date?number_to_datetime/>

</#if>

<#return ""/>

</#function>

<#function date_to_ymdhms date>

<#if date != null>

<#return date?string(‘yyyy-MM-dd hh:mm:ss‘)/>

</#if>

<#return ""/>

</#function>

引入方式:<#include "/user/common/function/date.ftl"/>
调用方式: ${number_to_ymdhms(item.addtime)}
 
好处是,日期处理统一到一个地方,格式统一。如果不需要统一的,就需要再写一个带格式的函数了。
null需要判断,防止报错:空异常。

原文首发:http://fansunion.cn/article/detail/531.html

时间: 2024-08-24 02:29:36

Freemarker中的日期转换的相关文章

FreeMarker中的日期时间处理

1. FreeMarker中的日期时间格式设置 FreeMarker中可以分别对date.time.datetime三种类型的日期时间设置格式,例如: config.setDateTimeFormat("yyyy-MM-dd HH:mm:ss"); config.setDateFormat("yyyy-MM-dd"); config.setTimeFormat("HH:mm:ss"); 当我们对一个页面变量使用 ?date ?time ?date

MYSQL中的日期转换

MYSQL中的日期转换 网址:?http://www.eygle.com/digest/2006/09/mysql_date_convert.html 对于每个类型拥有的值范围以及并且指定日期何时间值的有效格式的描述见7.3.6 日期和时间类型. 这里是一个使用日期函数的例子.下面的查询选择了所有记录,其date_col的值是在最后30天以内: mysql> SELECT something FROM table?WHERE TO_DAYS(NOW()) - TO_DAYS(date_col)

hive中的日期转换函数

1.unix时间戳转时间函数   语法: from_unixtime(bigintunixtime[, string format]) 返回值: string 说明: 转化UNIX时间戳(从1970-01-01 00:00:00 UTC到指定时间的秒数)到当前时区的时间格式 举例: hive>selectfrom_unixtime(1323308943,'yyyyMMdd')fromdual; 20111208 2.获取当前时区的unix时间戳 ? 1 2 3 4 5 6 7 8 9 10 语法

Struts2中Date日期转换的问题

今天跑程序的时候莫名其妙的出现了下面的一个异常: java.lang.NoSuchMethodException:com.ca.agent.model.mybatis.ApprovalInforCangra.setSubDate([Ljava.lang.String;) 这类异常信息在以前是处理过的,按照以前的思路在eclipse的调试模式下看看具体的情况,不过这次比较奇怪,根本没进入到对应的Action类中就抛出了此异常信息,进一步查找发现,在调用拦截器方法的时候就抛出了此异常信息,还有没有想

填坑:Java 中的日期转换

我们之前讨论过时间,在Java 中有一些方法会出现横线?比如Date 过期方法. 参考文章:知识点:java一些方法会有横线?以Date 过期方法为例 Java中的日期和时间处理方法 Date类(官方不再推荐使用,官方解释Date类不利于国际化,推荐使用Calendar类) Calendar类 DateFormat类 使用此类来时间初始化 我们发现,时间toLocalString 会有横线: vo.setSubmitDate(new Date().toLocaleString()); 可以改为:

Sql 中常用日期转换Convert(Datetime)

CONVERT(data_type,expression[,style]) convert(varchar(10),字段名,转换格式) 说明:此样式一般在时间类型(datetime,smalldatetime)与字符串类型(nchar,nvarchar,char,varchar)相互转换的时候才用到. 语句 结果SELECT CONVERT(varchar(100), GETDATE(), 0) 07 15 2009 4:06PMSELECT CONVERT(varchar(100), GETD

Sql 中常用日期转换Convert(Datetime) convert datetime

Convert(data_type,expression[,style]) Convert(varchar(10),字段名,转换格式) 说明:此样式一般在时间类型(datetime,smalldatetime)与字符串类型(nchar,nvarchar,char,varchar)相互转换的时候才用到. 语句 结果 Select Convert(Varchar(100), Getdate(), 0) --07 15 2009 4:06PM Select Convert(Varchar(100),

oracle中日期转换

oracle中,日期转换函数有很多,常用命令如下: to_char()命令将时间戳转换为用户规定的日期格式,如: SELECT TO_CHAR(sysdate,'YYYY-MM-DD hh24:mi:ss') FROM DUAL; 语法:TO_CHAR(X [,format]) 说明:将X按format格式转换成字符串.X可以是日期或者数字或时间戳,format是一个规定了X采用何种格式转换的格式字符串 to_date()命令可以将一个日期格式的字符串转换成date类型数据,如: SELECT 

springMVC中ajax请求和日期转换(九)

一.代码示例(需要导入jquery文件和json的jar包) 1.前台页面 <html> <head> <script type="text/javascript" src="js/jquery-1.8.3.js"></script> <script> function check(x){ var uname= x.value; var url="findOneByUname?t="+n