Сейчас я оцениваю jOOQ. И у нас есть проблемы с созданием операторов соединения, например:
create.select( )
.from( TABLEA, TABLEB)
.where(TABLEA.ID.equal( TABLEB.TABLEA_ID ));
Из-за несовпадения типов. В базе данных (Oracle 11g) TABLEA - это NUMBER(22,0)
, но TABLEB.TABLEA_ID - это NUMBER(7,0)
.
Поэтому jOOQ генерирует для первого свойства поле BigInteger
, а для последнего - поле Integer
.
Итак, я попытался сгенерировать все NUMBER(.*,0)
с BigInteger
со следующим xml:
<forcedTypes>
<forcedType>
<name>DECIMAL_INTEGER</name>
<expression>.*</expression>
<types>NUMBER(.*,0)</types>
</forcedType>
</forcedTypes>
</database>
Но это не сработало. У меня все еще есть поля с типом Integer
. Итак, что я могу с этим поделать, кроме изменения типа столбца таблицы?