比较JSTL中的两个日期

时间:2016-06-29 05:06:17

标签: jstl

我在jstl中将当前日期与给定日期(来自yyyy-MM-dd格式的数据库)进行比较,但它仅比较dd部分而不是完整日期dd-MM-yyyy。例如,如果当前日期是29-06-2016并且我与30-06-2018进行比较,那么它仅比较29和30.我的代码是:

<c:set var="now" value="<%=new java.util.Date()%>" />
<fmt:formatDate var="currDate" pattern="dd-MM-yyyy" value="${now}" />
<fmt:parseDate value="${mat_list.dt_expiry_date}" var="parsedExpDate" pattern="yyyy-MM-dd" />
    <fmt:formatDate var="expiryDate" pattern="dd-MM-yyyy" value="${parsedExpDate}" />

        <c:if test="${currDate > expiryDate}"><b><span style="background-color: red; color: white">${expiryDate}</span></b></c:if>

如何将完整日期与当前日期进行比较。

1 个答案:

答案 0 :(得分:0)

尝试如下。使用scriptlet或JSTL。

<jsp:useBean id="now" class="java.util.Date" />
<fmt:setLocale value="en_US" />
<fmt:parseDate value="${mat_list.dt_expiry_date}" var="parsedExpDate" pattern="yyyy-MM-dd" />
<c:if test="${now.time gt parsedExpDate.time}">
    <b><span style="background-color: red; color: white">${parsedExpDate}</span></b>
</c:if>