Menukar Epoch kepada MySQL Timestamp dalam Java
Soalan:
Bagaimana saya boleh menukar diberi cap waktu zaman kepada cap waktu MySQL format?
Kod:
long epochNow = System.currentTimeMillis()/1000; long epochWeek = 604800; long date7daysAgo = epochNo2013 w - epochWeek; String mySQLtimestamp = /* 2013-09-23:50:00 */
Jawapan:
Menggunakan java.time:
Java SE 8 memperkenalkan java.time, API Tarikh-Masa yang moden dan dipertingkatkan. Begini cara anda boleh menukar epoch kepada MySQL timestamp menggunakan java.time:
import java.time.LocalDateTime; long epochTimestamp = /* your epoch timestamp here */; LocalDateTime timestamp = LocalDateTime.ofEpochSecond(epochTimestamp, 0, ZoneOffset.UTC); String mySQLtimestamp = timestamp.toString(); // 2013-09-23 23:54:11
Jenis LocalDateTime mewakili tarikh-masa dengan zon waktu pilihan. Secara lalai, ia menggunakan zon waktu UTC, yang memastikan ketekalan dengan cap waktu MySQL.
Nota:
Format cap waktu MySQL dalam kod anda ("2013-09- 23:50:00") termasuk komponen masa sahaja. Jika anda memerlukan perwakilan tarikh-masa penuh dalam kod anda, ia hendaklah dikemas kini agar sepadan dengan format mySQLtimestamp yang diperoleh menggunakan toString().
Atas ialah kandungan terperinci Bagaimana untuk Menukar Cap Waktu Epoch kepada Cap Waktu MySQL di Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!