Когда я генерирую Java-классы из генератора jooq, я получаю устаревшее одно поле:
/**
* @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, "");
Я не уверен, что знаю, как определить привязку в моей конфигурации maven с типом "Point".
Есть идеи?
Редактировать:
<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).Надеюсь, я был достаточно ясен.