2015-06-21 43 views
2

我試圖在執行preparedStatement之前更改服務器的時間。服務器時間爲EDT,我希望在準備好的語句中使用它之前將其添加6小時。DateUtils無法解析

目前我得到這個錯誤:

DateUtils cannot be resolved.

我怎樣才能解決呢?

我很感激任何幫助。

代碼:

String sql = "SELECT r.route " 
      + "FROM routes AS r " 
      + "JOIN arrivaltimes AS a ON a.route_id = r.route_id " 
      + "JOIN stops as s on a.stop_id = s.stop_id " 
      + "WHERE a.weekday = ? " 
      + "AND arrivaltime BETWEEN ? - INTERVAL 2 MINUTE AND ? + INTERVAL 2 MINUTE " 
      + "AND s.name = ?"; 

    PreparedStatement preparedTime = con.prepareStatement(sql); 

    Date d1 = new Date(); 
    SimpleDateFormat df = new SimpleDateFormat("HH:mm:ss"); 
    String serverTime = df.format(d1); 
    java.sql.Time time = null; 
    try { 
     time = new java.sql.Time(df.parse(serverTime).getTime()); 
     Date newDate = DateUtils.addHours(time, 6); 
    } catch (ParseException e) { 
     e.printStackTrace(); 
    } 
+0

什麼是你的代碼中的DateUtils?它的包裝是什麼? –

+0

我沒有導入它,因爲當我將它懸停在它上面時,什麼都沒有出現!只是將它創建爲類..我試圖導入它作爲這個'import org.apache.commons.lang.time.DateUtils;'但我得到'導入org.apache.commons無法解析'? – TheBook

+0

我已經導入了日期包'import java.util.Date;' – TheBook

回答

3

根據您的第一個評論,The import org.apache.commons cannot be resolved意味着罐子commons-lang.jar從classpath中失蹤。將jar添加到你的類路徑,導入將會成功。

根據您的第二條評論,java.util.Date屬於rt.jar(以及其他一些罐子)。 DateUtilsDate有不同的包裝結構,可通過單獨的罐子獲得。

+0

我不知道我不得不導入一個jar來使用它:) – TheBook

+0

我得到這個錯誤,當我執行它'java.lang.NoClassDefFoundError:org/apache/commons/lang/time/DateUtils]的根本原因 java.lang.ClassNotFoundException:org.apache.commons.lang.time.DateUtils'? – TheBook