我想将所有Oracle DATE列都强制为LocalDateTime。
我尝试过的事情:
<forcedType>
<name>LOCALDATETIME</name>
<userType>java.time.LocalDateTime</userType>
<types>DATE\(*\)</types>
</forcedType>
但是jOOQ仍然会生成LocalDate。
forcedType的外观如何?
答案 0 :(得分:1)
您的<types>
表达式为“ DATE,后跟任意数量的(
,后跟一个)
。您可能想要这样:
<types>DATE(\(.*\))?</types>
请注意:您实际上并不需要指定<userType>
就能从"data type rewriting"功能中受益。指定与SQLDataType
中的类型匹配的名称即可。
请注意,jOOQ 3.11中存在一个错误,<name>LOCALDATETIME</name>
无效:https://github.com/jOOQ/jOOQ/issues/8493
此问题已在jOOQ 3.12中修复。暂时使用<name>TIMESTAMP</name>
代替<javaTimeTypes>