Die Konvertierung von OffsetDateTime zu Timestamp ist unkompliziert (Hinweis aus dieser Frage) und funktioniert wie erwartet:
Code: Select all
import java.time._
import java.sql.Timestamp
val ofsdatetime = OffsetDateTime.now()
// ofsdatetime: java.time.OffsetDateTime = 2017-04-04T21:46:33.567+02:00
val tstamp = Timestamp.valueOf(ofsdatetime.atZoneSameInstant(ZoneOffset.UTC).toLocalDateTime())
// tstamp: java.sql.Timestamp = 2017-04-04 19:46:33.567
Die Rückkonvertierung des Zeitstempels in OffsetDateTime funktioniert nicht wie erwartet:
Code: Select all
OffsetDateTime.ofInstant(Instant.ofEpochMilli(tstamp.getTime), ZoneId.systemDefault())
// java.time.OffsetDateTime = 2017-04-04T19:46:33.567+02:00
Warum? Was mache ich falsch?
 Mobile version
 Mobile version