JSTLで日付の比較に関する投稿をいくつか見ましたが、それでも機能しません。
日付フィールドがあり、01-01-1970
の後にあるかどうかをテストしたいと思います。
<c:if test="${user.BirthDate > whatGoesHere}">
<doSomeLogic/>
</c:if>
たぶん豆を使うべきですか?
ありがとう!
<fmt:formatDate>
それから年を抽出して、計算を実行できるようにします。
<fmt:formatDate value="${user.birthDate}" pattern="yyyy" var="userBirthYear" />
<c:if test="${userBirthYear le 1970}">
<doSomeLogic/>
</c:if>
Uはjstlとusebeanを次のように使用できます
<jsp:useBean id="now" class="Java.util.Date"/>
<c:if test="${someEvent.startDate lt now}">
It's history!</c:if>
Beanにブールゲッターを追加することもできます。
public boolean isBirthDateAfter1970(){
return birthDate.after(dateOf1970);
}
したがって、次のELを使用できます。
<c:if test="${user.birthDateAfter1970}">
You were born after the sixties.
</c:if>
_<c:if test="${date1.time > date2.time}">...</c:if>
_
またはlt
、_=
_、gt
:
_<c:if test="${date1.time gt date2.time}">...</c:if>
_
_Java.util.Date
_のLong getTime()
メソッドを悪用します。
(非推奨の)メソッドgetYear()
、getMonth()
などを使用できます。
_<c:if test="${user.BirthDate.year > 99}">
<doSomeLogic/>
</c:if>
_
getYear()
は年番号-1900を返すことに注意してください。