2

PostgreSQL 9.5 と jOOQ 3.8.4 を使用していくつかのテストを行っています。

具体的には、次のようなドメインを作成したいと考えています。

CREATE DOMAIN my_something NUMERIC(4,2);

次に、次のようにタイプを作成します。

CREATE TYPE my_type (
  something my_something;      
);

そして最後に、フィールドとしてタイプを持つテーブルがあります。

CREATE TABLE (
  id bigserial;
  type my_type;
);

jOOQ 3.8.4 がフィールドのマッピングを(int テーブル レコードと POJO の両方で)somethingとして生成することがわかります。ObjectドメインBigDecimalNUMERIC.

私が間違っている?そうでない場合、問題を克服する方法はありますか?

customTypesand を使用しforcedTypesてコンバーターを登録できるかもしれませんが、ユーザー定義型で機能するかどうかはわかりません! こちら側での経験はありますか?

4

2 に答える 2

1

PostgreSQL (またはその他のデータベース) のデータ型ドメインは、jOOQ 3.8 ではまだ完全にはサポートされていません。これは保留中の機能リクエストです: https://github.com/jOOQ/jOOQ/issues/681

それまでの間、実際にはforcedTypehere を使用して に書き換える必要my_type.somethingがありNUMERICます。詳細はこちら: http://www.jooq.org/doc/latest/manual/code-generation/data-type-rewrites

それが最も簡単な方法です。もちろん、より完全なソリューションのために独自のデータ型バインディングを作成することもできますが、この場合は必要ないと思います。データ型バインディングの詳細: http://www.jooq.org/doc/latest/manual/code-generation/custom-data-type-bindings

于 2016-09-12T09:21:54.197 に答える