fmt:formatDate格式化日期 各种类型 to Date

来源:互联网 发布:淘宝联盟返利靠谱吗 编辑:程序博客网 时间:2024/05/30 04:29

jsp页面使用<fmt:formatDate> 标签输出日期并格式化时,按照下图所示,输出日期
这里写图片描述
但,出现错误:
这里写图片描述

这里写图片描述

随后查看数据的日期格式为long类型
这里写图片描述

<fmt:formatDate> 指定的类型为Date类型,需要将long 转换成Date
提供解决方案:

这里写图片描述

这里写图片描述

这里写图片描述

如果为填入formatDate 标签中的参数 String类型,
会报java.lang.IllegalArgumentException: Cannot convert 201311251525 of type
class java.lang.String to class java.util.Date
异常,
解决办法是,可先将String解析为Date 然后再使用标签格式化Date

 <fmt:parseDate value="${order.createTime}" var="date" pattern="yyyyMMddHHmm"/>   <fmt:formatDate value="${date}" pattern="yyyy-MM-dd HH:mm" /> 



日期的各种格式化:
这里写图片描述


格式模式:
d —— 月中的某一天:一位数的日期没有前导零。
dd ——月中的某一天:一位数的日期有一个前导零。
ddd —— 周中某天的缩写名称:在 AbbreviatedDayNames 中定义。
dddd —— 周中某天的完整名称:在 DayNames 中定义。
M —— 月份数字:一位数的月份没有前导零。
MM —— 月份数字:一位数的月份有一个前导零。
MMM —— 月份的缩写名称:在 AbbreviatedMonthNames 中定义。
MMMM —— 月份的完整名称:在 MonthNames 中定义。
y —— 不包含纪元的年份:如果不包含纪元的年份小于 10,则显示不具有前导零的年份。
yy —— 不包含纪元的年份:如果不包含纪元的年份小于 10,则显示具有前导零的年份。
yyyy —— 包括纪元的四位数的年份。


gg —— 时期或纪元:如果要设置格式的日期不具有关联的时期或纪元字符串,则忽略该模式。
h —— 12 制的小时:一位数的小时数没有前导零。
hh —— 12制的小时:一位数的小时数有前导零。
H —— 24制的小时:一位数的小时数没有前导零。
HH —— 24制的小时:一位数的小时数有前导零。
m —— 分钟:一位数的分钟数没有前导零。
mm —— 分钟:一位数的分钟数有一个前导零。
s —— 秒:一位数的秒数没有前导零。
ss —— 秒:一位数的秒数有一个前导零。

0 0
原创粉丝点击