Rumah >Java >javaTutorial >Bagaimana untuk Menukar Epoch Time ke MySQL Timestamp di Java?

Bagaimana untuk Menukar Epoch Time ke MySQL Timestamp di Java?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-11 13:44:16238semak imbas

How to Convert Epoch Time to MySQL Timestamp in Java?

Menterjemah Epoch ke MySQL Timestamp dalam Java

Pengaturcara Java sering menghadapi keperluan untuk menukar masa Epoch, mewakili bilangan saat sejak Unix zaman, ke dalam format cap waktu MySQL. Begini cara untuk mencapai penukaran ini menggunakan API Tarikh-Masa moden Java, java.time.

java.time

Diperkenalkan dengan Java SE 8, java.time menyediakan API Tarikh-Masa yang komprehensif dan tahan ralat. Ia memetakan jenis ANSI SQL kepada jenis java.time, seperti yang ditunjukkan di bawah:

ANSI SQL Java SE 8
DATE LocalDate
TIME LocalTime
TIMESTAMP LocalDateTime
TIME WITH TIMEZONE OffsetTime
TIMESTAMP WITH TIMEZONE OffsetDateTime

Menukar Epoch kepada MySQL Timestamp

Menggunakan java.time, seseorang boleh menukar dengan mudah Tempoh masa kepada cap masa MySQL:

// Get current epoch time in milliseconds
long epochNow = System.currentTimeMillis();

// Create a LocalDateTime object from the epoch time
LocalDateTime timestampNow = Instant.ofEpochMilli(epochNow).atZone(ZoneId.systemDefault()).toLocalDateTime();

// Convert to MySQL timestamp format using DateTimeFormatter
String mySQLtimestamp = timestampNow.format(DateTimeFormatter.ofPattern("yyyy-MM-dd:HH:mm:ss"));

Contoh Penggunaan

Dalam coretan kod yang anda berikan, anda mempunyai epochNow yang mewakili masa dan tarikh semasa7daysAgo mewakili cap masa 7 hari yang lalu. Anda boleh menukar kedua-dua cap masa kepada format MySQL dengan mudah menggunakan kod di atas dan menyimpannya dalam mySQLtimestamp.

String mySQLtimestampNow = LocalDateTime.ofInstant(Instant.ofEpochMilli(epochNow), ZoneId.systemDefault())
        .format(DateTimeFormatter.ofPattern("yyyy-MM-dd:HH:mm:ss"));

String mySQLtimestamp7DaysAgo = LocalDateTime.ofInstant(Instant.ofEpochMilli(date7daysAgo), ZoneId.systemDefault())
        .format(DateTimeFormatter.ofPattern("yyyy-MM-dd:HH:mm:ss"));

Atas ialah kandungan terperinci Bagaimana untuk Menukar Epoch Time ke MySQL Timestamp di Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn