ホームページ >データベース >mysql チュートリアル >「EEE MMM dd HH:mm:ss ZZZ yyyy」を MySQL 互換の java.sql.Date に変換するにはどうすればよいですか?

「EEE MMM dd HH:mm:ss ZZZ yyyy」を MySQL 互換の java.sql.Date に変換するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2025-01-12 07:12:45982ブラウズ

How to Convert

「EEE MMM dd HH:mm:ss ZZZ yyyy」形式を java.sql.Date に変換します

この記事では、「EEE MMM dd HH:mm:ss ZZZ yyyy」形式のタイムスタンプを、MySQL データベースで受け入れられる「YYYY-MM-DD」形式に変換する方法について説明します。その方法は次のとおりです:

  1. Parse: SimpleDateFormat クラスを使用して、入力タイムスタンプを解析します。曖昧さを避けるために、フォーマット文字列とロケールが正確に定義されていることを確認してください。
  2. 形式: 2 番目の SimpleDateFormat を使用して、解析された日付を目的の「YYYY-MM-DD」形式に変換します。
  3. 変換: 日付をデータベースに保存するには、書式設定された日付から java.sql.Date オブジェクトを作成します。

最適化計画

より簡潔で効率的な方法は、最新の java.time パッケージを使用することです:

<code class="language-java">LocalDate date4 = ZonedDateTime.parse(date, DateTimeFormatter.ofPattern("EEE MMM dd HH:mm:ss zzz yyyy", Locale.ENGLISH))
            .toLocalDate();
java.sql.Date date5 = java.sql.Date.valueOf(date4);</code>

このコードは、ZonedDateTime クラスと LocalDate クラスを使用してタイムスタンプを解析し、変換します。

提案:

  • ロケールの影響を避けるには、Locale.ROOT を指定します。
  • 曖昧な 3 文字のタイム ゾーンの略語は使用せず、完全なタイム ゾーン ID または UTC オフセットを指定してください。
  • 最新の MySQL JDBC ドライバーが、変換なしの LocalDate オブジェクトの直接挿入をサポートしていることを確認します。

以上が「EEE MMM dd HH:mm:ss ZZZ yyyy」を MySQL 互換の java.sql.Date に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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