如何使JOOQ生成枚举类型和自定义类型?

时间:2015-05-15 13:38:51

标签: java mysql sql jooq

我正在使用JOOQ-codegen 3.6.1。

当我生成代码时,通常会生成所有Enum类型。但是,当我添加如下自定义类型时,JOOQ停止生成枚举:

  <customTypes>
    <customType>
      <name>LocalDateTime</name>
      <type>java.time.LocalDateTime</type>
      <converter>com.example.util.LocalDateTimeConverter</converter>
    </customType>
  </customTypes>
  <forcedTypes>
    <forcedType>
      <name>LocalDateTime</name>
      <types>TIMESTAMP</types>
    </forcedType>
  </forcedTypes>

在这种情况下,生成的LocalDateTime数据类型就好了。我似乎找不到生成枚举和自定义数据类型的方法。

似乎JOOQ在有自定义数据类型时甚至没有检测到Enums,因为我收到了日志消息:

  

信息:获取的枚举:0(包含0,排除0)

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

我相信这是jOOQ中的一个错误,我在此报告:https://groups.google.com/forum/#!topic/jooq-user/ENPvgqtVwW0

作为一种解决方法,您可以避免使用&lt; types&gt;过滤并始终使用&lt; expression&gt;过滤以选择列。