ホームページ >データベース >mysql チュートリアル >JavaでエポックタイムをMySQLタイムスタンプに変換するにはどうすればよいですか?

JavaでエポックタイムをMySQLタイムスタンプに変換するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-12-12 18:13:09751ブラウズ

How to Convert Epoch Time to a MySQL Timestamp in Java?

Java でのエポックタイムから MySQL タイムスタンプへの変換

Java および MySQL で時間値を操作する場合、エポックタイムを変換して、 Unix エポックからの秒数を、MySQL タイムスタンプ形式に変換することができます。

この変換を実現するには、Java 8 java.time API を使用する一般的なアプローチが必要です。この API は、さまざまな形式間の変換など、日付と時刻を処理するための最新のクラスとインターフェイスのセットを提供します。

エポック時刻から MySQL タイムスタンプへの変換

次のスニペットは、次のことを示しています。 java.time を使用してエポック時間を MySQL タイムスタンプに変換する方法API:

import java.time.LocalDateTime;

// Convert epoch time in milliseconds to seconds
long epochSeconds = System.currentTimeMillis() / 1000;

// Create a LocalDateTime object from the epoch seconds
LocalDateTime timestamp = LocalDateTime.ofEpochSecond(epochSeconds, 0, java.time.ZoneOffset.UTC);

// Format the LocalDateTime object as a MySQL timestamp string
String mySQLTimestamp = timestamp.toString();

結果の mySQLTimestamp 文字列は、MySQL タイムスタンプ データ型と互換性のある YYYY-MM-DD HH:MM:SS 形式になります。

代替アプローチ: SimpleDateFormat

一方、java.time API は一般に次の用途に推奨されます。日付と時刻を処理する、従来の SimpleDateFormat クラスを使用してエポック時間を変換する別のアプローチ:

import java.text.SimpleDateFormat;
import java.util.Date;

// Convert epoch time in milliseconds to a Date object
Date date = new Date(epochSeconds * 1000);

// Create a SimpleDateFormat to format the Date as a MySQL timestamp string
SimpleDateFormat sdf = new SimpleDateFormat("YYYY-MM-DD HH:MM:SS");

// Format the Date object as a MySQL timestamp string
String mySQLTimestamp = sdf.format(date);

このアプローチは、潜在的なスレッドセーフの問題と、異なるバージョン間での不一致のため、java.time API に比べてあまり推奨されません。 JDK の

以上がJavaでエポックタイムをMySQLタイムスタンプに変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。