Możesz użyć OffsetDateTime
. Od JDBC 4.2 możesz używać java.time typy
bezpośrednio z JDBC:
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("uuuu-MM-dd HH:mm:ss.SSS", Locale.ENGLISH);
OffsetDateTime odt = LocalDateTime.parse("2021-03-29 11:44:14.938", dtf)
.atZone(ZoneId.of("Europe/London"))
.toOffsetDateTime();
PreparedStatement st = conn.prepareStatement("INSERT INTO mytable (columnfoo) VALUES (?)");
st.setObject(1, odt);
st.executeUpdate();
st.close();
Dowiedz się więcej o nowoczesnym interfejsie API daty i czasu z Ścieżka:Data i godzina .