【问题标题】:How to define an explicit binding with maven configuration : Coordinates如何使用 Maven 配置定义显式绑定:坐标
【发布时间】:2018-10-05 16:36:36
【问题描述】:

当我从 jooq 生成器生成 java 类时,我得到一个字段已弃用:

/**
 * @deprecated Unknown data type. Please define an explicit {@link org.jooq.Binding} to specify how this type should be handled. Deprecation can be turned off using <deprecationOnUnknownTypes/> in your code generator configuration.
 */
@java.lang.Deprecated
public final TableField<PositionRecord, Object> COORDINATES = createField("coordinates", org.jooq.impl.DefaultDataType.getDefaultDataType("point"), this, "");

我不确定如何使用“Point”类型在我的 Maven 配置上定义绑定。

有什么想法吗?

编辑:

<configuration>

    <!-- JDBC connection parameters -->
    <jdbc>
        <driver>com.mysql.jdbc.Driver</driver>
        <url>jdbc:mysql://localhost:3306/${jooq.generation.schema}</url>
        <user>${jooq.generation.user}</user>
        <password>${jooq.generation.password}</password>
    </jdbc>

    <!-- Generator parameters -->
    <generator>
        <generate>
            <javaTimeTypes>true</javaTimeTypes>
        </generate>
        <database>
            <name>org.jooq.util.mysql.MySQLDatabase</name>
            <includes>.*</includes>
            <dateAsTimestamp>true</dateAsTimestamp>

            <!-- In case your database supports catalogs, e.g. SQL Server:
            <inputCatalog>public</inputCatalog>
              -->
            <inputSchema>${jooq.generation.schema}</inputSchema>
        </database>
        <target>
            <packageName>${jooq.generation.package}</packageName>
            <directory>target/generated-sources/jooq</directory>
        </target>
    </generator>
</configuration>

到目前为止,我已经能够使用此配置生成的 java 类。但是由于某些“数据类型”无法识别,某些字段已被弃用。所以我发现我们可以使用“强制类型”并将其放入 maven 配置中 + 添加相应的绑定以让 jooq 了解这种数据类型。例如在我们的例子中:我们希望能够到达“坐标”字段(在 java 中作为 Point 类型)。我希望我已经足够清楚了。

【问题讨论】:

  • 如果你想让人们帮助你,你应该更具体:你想要实现什么,你当前的配置是什么,生成的 Java 类是从哪里来的等等?不幸的是,很多 SO 社区成员都傲慢到在没有任何解释的情况下对您的帖子投反对票——很可能这种不充分的描述是有人投反对票的原因。我们无法读懂您的想法,请说明您的问题。
  • “所以我发现我们可以使用“强制类型”并将其放入 maven 配置中+添加相应的绑定以让 jooq 了解此数据类型” i> - 这是正确的方法,您需要使用数据类型绑定:jooq.org/doc/latest/manual/code-generation/…。您在特别是遇到什么问题?

标签: java sql jooq


【解决方案1】:

你已经回答了你的问题:

所以我发现我们可以使用“强制类型”并将其放入 maven 配置中 + 添加相应的绑定以让 jooq 了解此数据类型

这是正确的方法,你需要使用数据类型绑定:https://www.jooq.org/doc/latest/manual/code-generation/custom-data-type-bindings

按照手册中的说明进行操作就可以了。

【讨论】:

    猜你喜欢
    • 2021-03-12
    • 1970-01-01
    • 2011-01-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-26
    • 2012-11-03
    • 1970-01-01
    相关资源
    最近更新 更多