JOOQ多字段自定义类型转换器

7
我们有一些自定义类型,映射到多个数据库字段。例如:
PersonName{
  String salutation, 
  String firstName, 
  String lastName
}

以3个单独的数据库字段存储。总是写这些很无聊。

db.select(PERSON.FIRST_NAME, PERSON.LAST_NAME, PERSON.SALUTATION, ... some other fields)

然后获取记录并从相应的记录字段创建PersonName类型。

想法是定义一些多列自定义字段PERSON_NAME,这将由jooq在查询执行期间扩展为三个“真实”字段,并在结果中打包到一个PersonName对象中。

看起来可以使用org.jooq.impl.AbstractField之类的东西来实现这样的操作,但我想知道是否已经有解决此类情况的解决方案。

1个回答

1

有待处理的功能请求来支持这种功能:

使用 jOOQ 3.6 的开箱即用功能,您可以将这些列存储在某个地方:

Field<?>[] personName = {
    PERSON.SALUTATION,
    PERSON.FIRST_NAME,
    PERSON.LAST_NAME
};

然后将它们选择为这样:

db.select(personName)
  .select(... some other fields);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,