在Java 和MySQL 中儲存和表示沒有時間的日期
您的要求是在Java 和MySQL 中儲存沒有時間或時區資訊的日期。由於時區差異以及未指定時間時日期的模糊性,這可能具有挑戰性。
Java 解決方案:java.time
Java SE 8 引入了 java .time API,它提供了幾個用於表示日期和時間的類別。對於您的目的,LocalDate 類別是合適的,因為它僅表示年、月和日。
LocalDate birthday = LocalDate.of(1970, 3, 1); // March 1st, 1970
MySQL 解決方案:DATE
MySQL 提供DATE資料類型,以「YYYY-MM-DD」格式儲存日期,沒有任何時間或時區資訊。這與 LocalDate 使用的格式相匹配,簡化了儲存和檢索。
CREATE TABLE birthdays ( name VARCHAR(255) NOT NULL, birthday DATE NOT NULL ); INSERT INTO birthdays (name, birthday) VALUES ('John Doe', '1970-03-01');
處理不同時區
在處理跨不同時區的日期時,使用一致的表示。透過在 Java 中使用 LocalDate 和在 MySQL 中使用 DATE,您可以確保無論時區如何,日期資訊始終以相同的方式儲存和解釋。
結論
透過利用 Java 中的 LocalDate 類別和 MySQL 中的 DATE 資料類型,您可以有效地儲存和表示沒有時間或時區資訊的日期。這個優雅的解決方案可確保一致性並防止與時區相關的問題。
以上是如何在Java和MySQL中儲存沒有時間的日期?的詳細內容。更多資訊請關注PHP中文網其他相關文章!