簡體   English   中英

在JSP模板中大於日期

[英]Greater than date in jsp template

我在jsp表單模板中有此聲明

<% if (forms.getFlDate().equals("10/17/05")) { %>
<jsp:getProperty name="forms" property="flDate" /><br />
<% } %>

但是,我需要測試一個大於(“ 10/17/05”)的日期。

我試過了

<% if (forms.getFlDate().gt("10/17/05")) { %>
<jsp:getProperty name="forms" property="flDate" /><br />
<% } %>

但它不起作用。 這並不是我真正的職責,有點被推入了。

您可以先使用SimpleDateFormat將“ 10/17/05”轉換為日期對象,然后再使用<% if (forms.getFlDate().after(myDate)) { %>

<%
    SimpleDateFormat fmt = new SimpleDateFormat("MM/dd/yy");
    java.util.Date myDate = fmt.parse("10/17/05");
    if (forms.getFlDate().after(myDate)) {
      // your logic here
    }

%>

如果要多次使用此“ 10/17/05”,請在您的JSP前面引入一個變量:

<% Calendar earlyDate = Calendar.getInstance();
   earlyDate.set(2005, Calendar.OCTOBER, 17, 0, 0, 0); // ** ** **
   Date earliest = earlyDate.getTime();
%>

然后再...

<% if(forms.getFlDate().after(earliest)){ %>
    <jsp:doSomethingHere.../>
<% } %>

請注意,這假定您的flDate字段被聲明為日期而不是字符串。 如果不是,則還應遵循@ S4beR的建議,以使用SimpleDateFormat將String轉換為Date對象。

** ** **使用十月份的常量,因為日歷中的月份是從零開始的。 Facepalm

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM