oracle - OffsetDateTime java8 ojdbc8 oracle insert cet to cest问题
问题描述
您好,我在插入具有正确时区的 OffsetdateTime 时遇到问题我有字符串 20110401000000000 然后我像这样转换为 OffsetDateTime:
DateTimeFormatter dft =
new DateTimeFormatterBuilder()
.appendPattern("yyyyMMddHHmmss")
.appendValue(ChronoField.MILLI_OF_SECOND, 3)
.toFormatter();
LocalDateTime dateTime = LocalDateTime.parse(pDateTimeString, dft);
OffsetDateTime of = OffsetDateTime.of(dateTime, ZoneOffset.ofHours(1));
我得到 2011-04-01T00:00+01:00 - 现在一切都很好我插入数据库
ps.setObject(3,of);
在我的数据库中我看到
是否转换为 cest
好奇心------------
如果日期 2021-03-03T00:00+01:00
放入数据库是正确的
-- 我的连接设置
c.getDefaultTimeZone() -> 欧罗巴/苏黎世
c.getSessionTimeZone() -> 欧罗巴/苏黎世
谢谢你的帮助
解决方案
推荐阅读
- java - 混淆使用 GSON 从 JSON 字符串中获取值
- scala - Discovering and reading multiple files in Spark
- c# - Unit test (NUnit, Nsubstitute) ASP Core Service with MongoDB
- c++ - 多次运行程序后形状很奇怪
- javascript - 无法从“F:\\Angular Projects\\cmp-databinding-start”中找到模块“@angular-devkit/build-angular”
- ansible - How to iterate over multiple lists of a dicts in Ansible?
- apache-spark - 从 hiveserver2 (JDBC) 远程集群读取火花
- haskell - Why does GHCi show "Display all 516 posibilities? (y or n)" when I paste code into the terminal?
- unity3d - Unity - Does a script's Awake() run before other scripts' Start()?
- docker - 带有通配符域的 Traefik Docker