我想要做的是獲取兩個事件之間的差異,在這種情況下,商店開始製作特定項目的事件以及同一商店開始傳輸的時間它給客戶的位置。 我使用java和hibernate開發這個WebApp。 的實體被稱爲報告(因爲我將生成此信息的報告) 兩個事件的屬性是:檢索時存儲在數據庫中的休眠時間戳值爲零
@Column
private Timestamp fechaFabricacion;
@Column
private Timestamp fechaTransporte;
它們被存儲在我的數據庫正確爲:
2012-09-24 13:13:10
爲製造開始 和
2012-09-24 13:13:40
運輸開始。
我想報告的是,它需要商店(在這種情況下)30秒從製造到運輸。 現在,值被完美地存儲了,我遇到的問題是當我嘗試從數據庫中檢索它並進行數學運算時,這是我使用的代碼。
Query qr = em.createNamedQuery("Reporte.findByNumSeguimientoEntrega");
qr.setParameter("numSeguimientoEntrega",numSeguimiento);
List<Reporte> reportList = qr.getResultList();
Reporte report = reportList.get(0);
Timestamp timeStamp1 = report.getFechaInicio();
Timestamp timeStamp2 = report.getFechaFabricacion();
Long timeDiference =(timeStamp1.getTime()-timeStamp2.getTime())/(1000 * 60 * 60 * 24);
的問題是,即時得到0的兩個時間戳納米值作爲我的調試器顯示此圖像中:
我到底做錯了什麼?我怎樣才能得到真正的價值和獲得時差?
非常感謝您花時間閱讀本文。
你說的區別應該是「秒」?但是你正在計算「天數」(如果實際差異只有30秒,這當然是0)。 – jtahlborn