Java8以前は、JodaのDateTime
クラスを使用してタイムゾーン情報を追加しました。DateTime
とsql Timestamp
の間で簡単に変換できます。Java 8 ZonedDateTimeまたはOffsetDateTimeをJoda DateTimeに置き換えます
Java8に移行したら、どのクラスを置き換えるべきですか? OffsetDateTime
またはZonedDateTime
?
また、私はOffsetDateTime
を使用しようとしましたが、からはTimestamp
に戻ることはできません。
DateTime
と
Timestamp
コンバータの
、コードは次のようである:
val joda = DateTime.now()
val sqlJoda = new Timestamp(joda.getMillis)
val jodaBack = new DateTime(sqlJoda)
しかしJava8ため、
val java8 = OffsetDateTime.now()
val sqlJava8 = new Timestamp(java8.toInstant.toEpochMilli)
val java8Back = ???
誰もがそのことについていくつかのアイデアを持っていますか?それはジョーダDateTime
が本当に良いようです。
SQLタイムスタンプの公式マッピングは、LocalDateTime(タイムゾーンなしのタイムスタンプ)またはOffsetDateTime(タイムゾーン付きタイムスタンプ)です。たとえば、JDBC 4 JCPのメンテナンスリリース2(https://jcp.org/en/jsr/detail?id=221 – assylias
)を参照してください。ありがとう。そこには医者がいますか? – spa
参照:http://stackoverflow.com/a/31749317/829571 – assylias