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);

在我的数据库中我看到

red is wrong

是否转换为 cest

好奇心 -------------

如果日期为 2021-03-03T00:00+01:00

enter image description here

正确放入数据库

-- 我的连接设置

c.getDefaultTimeZone() -> 欧洲/苏黎世

c.getSessionTimeZone() -> 欧洲/苏黎世

感谢您的帮助

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...