Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Menukar 'EEE MMM dd HH:mm:ss ZZZ yyyy' kepada java.sql.Date yang Serasi MySQL?

Bagaimana untuk Menukar 'EEE MMM dd HH:mm:ss ZZZ yyyy' kepada java.sql.Date yang Serasi MySQL?

Mary-Kate Olsen
Mary-Kate Olsenasal
2025-01-12 07:12:45982semak imbas

How to Convert

Tukar format "EEE MMM dd HH:mm:ss ZZZ yyyy" kepada java.sql.Date

Artikel ini menerangkan cara menukar cap masa dalam format "EEE MMM dd HH:mm:ss ZZZ yyyy" ke dalam format "YYYY-MM-DD" yang boleh diterima oleh pangkalan data MySQL. Begini caranya:

  1. Parse: Gunakan kelas SimpleDateFormat untuk menghuraikan cap masa input. Pastikan rentetan format dan tempat ditakrifkan dengan tepat untuk mengelakkan kekaburan.
  2. Pemformatan: Gunakan SimpleDateFormat kedua untuk menukar tarikh yang dihuraikan ke dalam format "YYYY-MM-DD" yang diingini.
  3. Penukaran: Untuk menyimpan tarikh ke dalam pangkalan data, cipta objek java.sql.Date daripada tarikh yang diformatkan.

Pelan pengoptimuman

Cara yang lebih ringkas dan cekap ialah menggunakan pakej java.time moden:

<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>

Kod ini menggunakan kelas ZonedDateTime dan LocalDate untuk menghuraikan dan menukar cap masa.

Cadangan:

  • Untuk mengelakkan kesan setempat, nyatakan Locale.ROOT.
  • Elakkan menggunakan singkatan zon waktu tiga huruf yang samar-samar, nyatakan ID zon masa penuh atau ofset UTC.
  • Sahkan bahawa pemacu MySQL JDBC terbaharu menyokong pemasukan terus LocalDate objek tanpa penukaran.

Atas ialah kandungan terperinci Bagaimana untuk Menukar 'EEE MMM dd HH:mm:ss ZZZ yyyy' kepada java.sql.Date yang Serasi MySQL?. 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