0
while (rs.next()) {
    String rn = rs.getString(3);
    String sqldate = rs.getString(2); // database reservation date
    if (rn.equals(rnumber)) {
        Calendar cal = Calendar.getInstance();
        String rdate = (Integer.toString(cal.get(Calendar.YEAR)) + "-" + Integer.toString(cal.get(Calendar.MONTH)) + "-" + Integer.toString(cal.get(Calendar.DATE)));
    } else {
        response.sendRedirect("status.jsp?Status=Reservation number not exist");
    }
}

我需要在 SQL 日期( 2012-10-05 +7 )上增加 7 天,并且需要检查这些天是否在 SQL 日期和当前日期之间。

4

3 回答 3

2

您需要解析date字符串以创建java.sql.Date对象:-

String sqldate = rs.getString(2);
DateFormat DOB = new SimpleDateFormat("yyyy-MM-dd");
java.sql.Date convertedDate = new java.sql.Date(DOB.parse(sqldate).getTime());

然后使用Calendar.setTime()方法设置Date为日历实例: -

Calendar cal = Calendar.getInstance();
cal.setTime(convertedDate);
cal.add(Calendar.DATE, 7);
于 2012-10-18T06:36:02.753 回答
1

使用Joda 时间库。它很容易处理日期。

DateTime dt = new DateTime();

您可以加上天、月、年并查找文档。这将在 java 8 中添加

于 2012-10-18T06:20:22.060 回答
1

尝试使用“int days = Days.daysBetween(sqlDate, todaysDate).getDays();” 并检查它是否大于 7

于 2012-10-18T06:46:30.477 回答