将PostgreSQL日期转换为Java Date而不是LocalDate

3
使用JOOQ 3.10.1,我认为代码生成器的javaTimeTypes标志默认为开启状态。
我在PostgreSQL数据库中有一个表,其中包含一个日期列和一个带时区的时间列:
- 带时区的时间列成为记录类中的OffsetDateTime,如预期所示。 - 日期变成了记录类中的java.sql.Date,而我本来期望是LocalDate。
请问我错过了什么吗?

不知道是否有帮助,但这里有一些关于转换器的内容,包括一个 LocalDateConverter:https://www.jooq.org/doc/3.7/manual/sql-building/queryparts/custom-bindings/。 - Arnaud
这是我之前在3.10版本以前一直在使用的,但现在不再需要了。 - assylias
1个回答

1
使用 JOOQ 3.10.1,我认为代码生成器的 javaTimeTypes 标志默认开启。
以下是规范: https://www.jooq.org/xsd/jooq-codegen-3.10.0.xsd
<element name="javaTimeTypes" type="boolean" default="false" minOccurs="0" maxOccurs="1">..

所以,不,它不是默认开启的。
引用块: 在记录类中,“time with time zone”列变成了OffsetDateTime,正如预期的那样。
这是因为没有其他类型可以有意义地表示“time with time zone”数据类型。

1
嗯 - 最糟糕的部分可能是我确实检查了 XSD 并得出结论它默认为 true - 或许需要问问验光师而不是 StackOverflow!谢谢,问题已解决。 - assylias
@assylias:好的,现在这里也有记录了,供将来可能不知道XSD存在的访问者参考 :) - Lukas Eder

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接