Bạn cần sử dụng các phương thức getTime () hoặc getTimestamp () như được đề xuất trong nhận xét của Thomas. Tuy nhiên, để đưa ra một ví dụ ...
Giả sử bảng bạn truy vấn như sau:rs = stmt.executeQuery("select timeCol, dateCol, dateTimeCol from dateTimeTable");
Bạn có thể làm:
java.sql.Time dbSqlTime = rs.getTime(1);
java.sql.Date dbSqlDate = rs.getDate(2);
java.sql.Timestamp dbSqlTimestamp = rs.getTimestamp(3);
Nếu bạn muốn sử dụng đối tượng ngày trong Java:
java.util.Date dbSqlTimeConverted = new java.util.Date(dbSqlTime.getTime());
java.util.Date dbSqlDateConverted = new java.util.Date(dbSqlDate.getTime());
Tôi cũng sẽ xem JodaTime để làm việc với Dates trong Java, làm cho cuộc sống trở nên đơn giản hơn nhiều.
Cuối cùng, điều đáng chú ý là có một vài khác biệt giữa Dấu thời gian và DateTime trong MySQL. Cụ thể là Dấu thời gian có múi giờ và máy chủ sẽ trả về Dấu thời gian được truy vấn theo giờ địa phương của Máy chủ (điều này có thể gây khó chịu). Lời khuyên của tôi là sử dụng DateTime và luôn giữ ngày / giờ trong cùng một múi giờ (tức là UTC). Xem http://dev.mysql.com/doc/refman/ 5.0 / vi / datetime.html