2016-06-29 70 views
1

現在の日付とjstlの指定された日付(yyyy-MM-dd形式のデータベース)とを比較していますが、dd-dd-MM-yyyyでないdd部分のみを比較しています。現在の日付が29-06-2016あると私は30-06-2018で比較する場合たとえば、それだけで29 30との私のコードを比較している次のとおりです。JSTLの2つの日付を比較します

<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> 

現在の日付との完全な日付を比較する方法。

+0

文字列ではなく日付を比較します。日付は時間順にソートされます。文字列は辞書順にソートされます。また、そのコードをJSPではなくコントローラまたはモデルに配置します。 –

答えて

-1

次のようにしてください。スクリプトレットまたは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> 
関連する問題