Epoch timestamp ialah perwakilan berangka ringkas bagi satu titik dalam masa. Ia ialah bilangan saat yang telah berlalu sejak zaman Unix, iaitu 1 Januari 1970 pada tengah malam Waktu Sejagat Selaras (UTC).
Di Java, anda boleh mendapatkan cap waktu zaman semasa seperti berikut:
long epochNow = System.currentTimeMillis() / 1000;
Untuk menukar cap masa zaman kepada cap masa MySQL, anda boleh menggunakan yang berikut kod:
String mySQLtimestamp = new Timestamp(epochTimestamp * 1000).toString();
Sebagai contoh, kod berikut akan menukar cap masa zaman semasa kepada cap masa MySQL:
long epochNow = System.currentTimeMillis() / 1000; String mySQLtimestamp = new Timestamp(epochNow * 1000).toString();
Ini akan menghasilkan output berikut:
2013-09-23 18:57:32.123
Dengan keluaran Java SE 8 pada Mac 2014, yang ketinggalan zaman dan API Date-Time warisan yang terdedah kepada ralat (jenis Date-Time java.util dan jenis pemformatannya, SimpleDateFormat dll.) telah digantikan oleh java.time, API Tarikh-Masa moden*. Jadual berikut menggambarkan pemetaan jenis ANSI SQL dengan jenis java.time:
ANSI SQL | Java SE 8 |
---|---|
DATE | LocalDate |
TIME | LocalTime |
TIMESTAMP | LocalDateTime |
TIME WITH TIMEZONE | OffsetTime |
TIMESTAMP WITH TIMEZONE | OffsetDateTime |
Atas ialah kandungan terperinci Bagaimana untuk Menukar Cap Masa Epoch kepada Cap Masa MySQL di Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!