ホームページ >データベース >mysql チュートリアル >Java と MySQL で時間やタイムゾーン情報なしで日付を効率的に保存するにはどうすればよいですか?

Java と MySQL で時間やタイムゾーン情報なしで日付を効率的に保存するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2025-01-22 05:51:12998ブラウズ

How to Efficiently Store Dates Without Time or Time Zone Information in Java and MySQL?

Java および MySQL での日付の効率的な保存 (時刻またはタイムゾーン情報なし)

この記事は、Java と MySQL で時間情報なしで日付を保存する方法の問題をエレガントに解決します。

java.time: LocalDate

java.time は複数の日時型を提供します。ここで、LocalDate は時間またはタイムゾーン情報を含まない日付を表します。 java.time では、日付は ISO 8601 標準を使用して表現され、日付部分がすべてのタイム ゾーンで一貫していることが保証されます。

MySQL データ型マッピング

MySQL に LocalDate 値を保存する場合は、DATE データ型を使用する必要があります。次の表は、ANSI SQL データ型と Java 8 日時型の間のマッピングを示しています。

ANSI SQL 数据类型 Java 8 日期时间类型
DATE LocalDate
MySQL に LocalDate を保存する

LocalDate 値を MySQL に保存するには、次の JDBC ステートメントを使用できます:

<code class="language-java">PreparedStatement stmt = connection.prepareStatement("INSERT INTO birth_dates (birthdate) VALUES (?)");
stmt.setObject(1, localDate);</code>
データベースからデータが取得されると、クライアントまたはデータベース サーバーのタイムゾーンに関係なく、常に同じ日付として解釈されます。

これは、java.time を使用して、時間またはタイムゾーン情報を含まない日付を保存および取得する方法の例です。

以上がJava と MySQL で時間やタイムゾーン情報なしで日付を効率的に保存するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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