1 Java中的時間類型 java.sql包下給出三個與數據庫相關的日期時間類型,分別是: Date:表示日期,只有年月日,沒有時分秒。會丟失時間; Time:表示時間,有年月日時分秒; Timestamp:表示時間戳,有年月日時分秒,以及毫秒。 這三個類都是java.util.Date的子類。 java.util.Date -- 年月日時分秒 java.util.Calendar -- Date getTime()
2 時間類型相互轉換 把數據庫的三種時間類型賦給java.util.Date,基本不用轉換,因為這是把子類對象給父類的引用,不需要轉換。 java.sql.Date date = … java.util.Date d = date; java.sql.Time time = … java.util.Date d = time; java.sql.Timestamp timestamp = … java.util.Date d = timestamp; 當需要把java.util.Date轉換成數據庫的三種時間類型時,這就不能直接賦值了,這需要使用數據庫三種時間類型的構造器。java.sql包下的Date、Time、TimeStamp三個類的構造器都需要一個long類型的參數,表示毫秒值。創建這三個類型的對象,只需要有毫秒值即可。我們知道java.util.Date有getTime()方法可以獲取毫秒值,那么這個轉換也就不是什么問題了。 java.utl.Date d = new java.util.Date(); java.sql.Date date = new java.sql.Date(d.getTime());//會丟失時分秒 Time time = new Time(d.getTime()); Timestamp timestamp = new Timestamp(d.getTime());