Chuyển Date thành Timestamp và Timestamp thành Date trong Java

Có đôi lúc với những yêu cầu gay gắt của khách hàng hay đơn giản là bài tập hoóc búa của một ông thầy nào đó cho bạn: Chuyển Date thành Timestamp và Timestamp thành Date trong Java

Date ở đây là class thuộc gói java.util (java.util.Date)

Timestamp là class thuộc gói java.sql (java.sql.Timestamp)

Tại sao phải rắc rối như vậy? Đơn giản là lập trình mà, chuyện gì cũng có thể xảy ra, hình tròn có khi không còn tròn nữa đó chứ 🙂

Giỡn vậy thôi, sở dĩ có khi bạn gặp trường hợp này là vì MySQL và một số Hệ quản trị CSDL khác có một kiểu dữ liệu là Timestamp, muốn insert được dữ liệu vào CSDL cho các trường có kiểu dữ liệu này thì trong Java bạn cũng phải khai báo kiểu dữ liệu Timestamp cho các dữ liệu đó. Mà mặt khác, việc thao tác với dữ liệu kiểu Date dễ dàng hơn nhiều so với Timestamp nên nhiều lúc đang làm việc với Date nhưng lại chuyển về Timestamp và ngược lại.

Ví dụ Chuyển Date thành Timestamp và Timestamp thành Date

package com.ngockhuong;

import java.sql.Timestamp;
import java.util.Date;

public class DateToTimestamp {
	public static void main(String[] args) {
		// lấy ngày giờ hiện tại
		Date now = new Date();
		System.out.println(now);
		
		// chuyển Date sang Timestamp
		Timestamp timestamp = new Timestamp(now.getTime());
		System.out.println(timestamp);
		
		// chuyển Timestamp sang Date 
		Date last = new Date(timestamp.getTime());
		System.out.println(last);
	}
}

Kết quả

Tue Feb 14 01:53:24 ICT 2017
2017-02-14 01:53:24.981
Tue Feb 14 01:53:24 ICT 2017

5 1 vote
Đánh giá bài viết
Nhận thông báo
Thông báo khi có
guest

0 Bình luận
Phản hồi nội tuyến
Xem tất cả các bình luận