如何用表达式语言获取日、月和年(以及每个 Calendar.XXXXXXX 值)?
${object.calendarObject.MONTH}
最佳答案
您可以使用 ${calendar.time}
得到 Date
EL中的对象。您可以使用 JSTL <fmt:formatDate>
格式化 Date
在 JSP 中将对象转换为人类可读的字符串。它使用 SimpleDateFormat
在pattern
的幕后并支持其所有模式属性。
在下面的示例中,为简洁起见,我假设 ${cal}
是日历。将其替换为您的 ${object.calendarObject}
适用时。
<%@taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
...
<ul>
<li>Standard date/time: <fmt:formatDate value="${cal.time}" type="both" /></li>
<li>Standard date: <fmt:formatDate value="${cal.time}" type="date" /></li>
<li>Day: <fmt:formatDate value="${cal.time}" pattern="d" /></li>
<li>Month: <fmt:formatDate value="${cal.time}" pattern="M" /></li>
<li>Year: <fmt:formatDate value="${cal.time}" pattern="yyyy" /></li>
<li>dd-MM-yyyy: <fmt:formatDate value="${cal.time}" pattern="dd-MM-yyyy" /></li>
<li>MM/dd/yyyy: <fmt:formatDate value="${cal.time}" pattern="MM/dd/yyyy" /></li>
</ul>
到目前为止,这应该会产生类似于(英语语言环境,GMT+1)的结果:
- Standard date/time: Jul 6, 2011 10:34:17 PM
- Standard date: Jul 6, 2011
- Day: 6
- Month: 7
- Year: 2011
- dd-MM-yyyy: 06-07-2011
- MM/dd/yyyy: 07/06/2011
关于java - 表达式语言中的日历对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6602182/