java.time
物件與SQL資料庫整合本指南介紹如何將 java.time
物件(在 Java 8 中引入)與 SQL 資料庫無縫整合。 此方法取決於 JDBC 驅動程式與 Java 8 的兼容性。
java.time
現代 JDBC 驅動程序,例如 H2 的內建驅動程序,旨在直接與 java.time
類型一起使用。 這大大簡化了過程。
資料插入:
直接使用setObject()
進行插入,讓驅動自動處理型別轉換:
<code class="language-java">myPreparedStatement.setObject(1, myLocalDate); </code>
資料擷取:
類似地,使用 getObject()
檢索資料並指定預期的 java.time
類別:
<code class="language-java">LocalDate localDate = myResultSet.getObject("my_date_column_", LocalDate.class);</code>
較舊的 JDBC 驅動程式可能需要在 java.time
和 java.sql
類型之間進行手動轉換。
資料插入:
在插入之前將 java.time
物件轉換為 java.sql.Date
:
<code class="language-java">java.sql.Date mySqlDate = java.sql.Date.valueOf(myLocalDate); preparedStatement.setDate(1, mySqlDate);</code>
資料擷取:
擷取資料為java.sql.Date
,然後轉換回LocalDate
:
<code class="language-java">java.sql.Date mySqlDate = myResultSet.getDate(1); LocalDate myLocalDate = mySqlDate.toLocalDate();</code>
雖然使用符合 Java 8 的驅動程式是高效、直接處理 java.time
物件的建議方法,但轉換方法提供了與舊驅動程式相容的可行解決方案。 選擇最適合您的資料庫和 JDBC 驅動程式設定的方法。
以上是如何在 SQL 資料庫中插入和取得 java.time 物件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!