Date date = //getting Date object of (record inserted datetime) using Hibernate query .
DateTime currentDateTime = new DateTime(System.currentTimeMillis(), DateTimeZone.UTC);
System.out.println("Current Date Time " + currentDateTime);
DateTime utcDateTime = new DateTime(date, DateTimeZone.UTC);
System.out.println("UTC Date Time :: " + utcDateTime);
Period per = new Period(currentDateTime.toLocalDateTime(), utcDateTime.toLocalDateTime());
System.out.println("Period time in sec ::" + (float) per.toStandardSeconds().getSeconds());
System.out.println("Period time in minutes::" + (float) per.toStandardSeconds().getSeconds()/60);
System.out.println("Period time in hours::" + (float) per.toStandardSeconds().getSeconds()/(60 * 60));
我在從MySQL DB中獲取數據時使用joda API和Hibernate。我在MySQL數據庫中存儲UTC時區的所有數據。現在我想要獲取當前時間和插入記錄之間的時間差。我的本地時區是格林威治標準時間+5:30。我時差(+5:30小時,實際差異)時差。不知道我在做什麼錯誤?
編輯:
我正在使用此代碼將數據存儲在數據庫中。使用joda API和UTC時區錯誤時差(分鐘/小時)
DateTimeFormatter dateTimeFormatter = DateTimeFormat.forPattern(format);
DateTime dateTime = new DateTime(DateTimeZone.UTC);
return dateTime.toString(dateTimeFormatter);
這個問題與喬達時間在這裏完全不清楚。 'date'的價值是什麼? (這是一個'java.sql.Date'或'java.util.Date'?)數據庫中記錄了什麼值?這並沒有幫助你沒有向我們展示任何涉及的值......並且不清楚你爲什麼要轉換到LocalDateTime。 –
它是java.util.Date。查看更新的問題。 –
我不知道你是如何從上面的評論到你的編輯... –