FreeMarker中显示Calendar数据类型

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了FreeMarker中显示Calendar数据类型相关的知识,希望对你有一定的参考价值。

Controller中,回填到模板的的一个数据类型是Calendar,在前端显示的时候,直接显示会报错,比如模板中这样写${submitDate},会出现如下的错误:

java.util.GregorianCalendar[time=-2209017600000,areFieldsSet=true,areAllFieldsSet=true,lenient=true,zone=java.util.SimpleTimeZone[id=,offset=28800000,dstSavings=3600000,useDaylight=false,startYear=0,startMode=0,startMonth=0,startDay=0,startDayOfWeek=0,startTime=0,startTimeMode=0,endMode=0,endMonth=0,endDay=0,endDayOfWeek=0,endTime=0,endTimeMode=0],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=1900,MONTH=0,WEEK_OF_YEAR=1,WEEK_OF_MONTH=1,DAY_OF_MONTH=1,DAY_OF_YEAR=1,DAY_OF_WEEK=2,DAY_OF_WEEK_IN_MONTH=1,AM_PM=0,HOUR=0,HOUR_OF_DAY=0,MINUTE=0,SECOND=0,MILLISECOND=0,ZONE_OFFSET=28800000,DST_OFFSET=0]

这么一个简单的问题,搜遍全网,竟然没有答案。复杂点的方法,就是在Controller中实现一个转换方法,然后在FreeMarker模板中调用该方法。

后来有搞了很久,其实解决的方法很简单:

${submitDate.time?string["yyyy-MM-dd HH:mm:ss"]}

希望能帮到被同样问题困惑的人。

以上是关于FreeMarker中显示Calendar数据类型的主要内容,如果未能解决你的问题,请参考以下文章

使用freemarker模板引擎,后台返回的时间格式(datetime类型)无法显示在input type="text"中显示

FreeMarker--02---数据类型

freemarker数据类型

freemarker 支持是不是显示数据模型中的所有变量?

Freemarker 基本数据类型

Freemarker 基本数据类型