在Java 中管理MySQL 日期時間和時間戳
從Java 應用程式使用MySQL 資料庫時,處理日期和時間資訊可能是一個簡單的過程。由於可用的數據類型不同而面臨挑戰。要找到合適的折衷方案,了解每種類型的特徵非常重要。
Java 中的表示方式
在 Java 中,日期通常由 java.util 表示。日期類。該類別封裝了時間戳,其中包含日期和時間資訊。 java.util.Date 的精度通常以毫秒為單位。
MySQL 中的表示
MySQL 提供三種標準日期和時間類型:DATE、TIME 和 TIMESTAMP。在 JDBC 中,這些類型分別對應到 java.sql.Date、java.sql.Time 和 java.sql.Timestamp。這些類別是 java.util.Date 的子類別。
與 java.util.Date 不同,java.sql.Date 只包含日期訊息,而 java.sql.Time 只包含時間資訊。另一方面,java.sql.Timestamp 組合了日期和時間資訊。這些類型的精度取決於資料庫,但通常以毫秒為單位。
儲存時間戳
要在資料庫中儲存時間戳,可以使用PreparedStatement# setTimestamp() 方法。
<code class="java">java.util.Date date = getItSomehow(); Timestamp timestamp = new Timestamp(date.getTime()); preparedStatement = connection.prepareStatement("SELECT * FROM tbl WHERE ts > ?"); preparedStatement.setTimestamp(1, timestamp);</code>
檢索時間戳
要從資料庫擷取時間戳,可以使用 ResultSet#getTimestamp() 方法。
<code class="java">Timestamp timestamp = resultSet.getTimestamp("ts"); java.util.Date date = timestamp; // You can just upcast.</code>
透過了解這些不同的資料類型及其使用模式,您可以在與 MySQL 資料庫互動時有效地管理 Java 應用程式中的日期時間和時間戳記。
以上是如何在 Java 應用程式中有效管理 MySQL 日期時間和時間戳記?的詳細內容。更多資訊請關注PHP中文網其他相關文章!