如何使用jOOQ RecordUnmapper?

时间:2019-02-21 02:15:21

标签: java sql jooq

我正在尝试实现jOOQ RecordUnmapper来调整记录,以后再插入/更新。

我在下面的尝试中,问题是无法实例化Record类。如何创建Record对象?另外,如何在插入/更新中使用解映射器?

public class TableUnmapper implements RecordUnmapper<Table, Record> {

    @Override
    public Record unmap(Table t) throws MappingException {
        Record r = new Record();  // <-- this line does not compile
        r.from(t);
        r.set(TABLES.TITLE_FONT_FAMILY, t.getTitleFont().getFontFamily());
        return r;
    }

}

1 个答案:

答案 0 :(得分:2)

@override void didChangeDependencies() { super.didChangeDependencies(); setState(() => topLayoutHeight = MediaQuery.of(context).size.height - 200); } 是一个接口,因此您不能直接创建该接口的实例,必须实例化一个实现Record接口的类,如果使用Jooq代码生成器,则可能已经有一个Record类,这是您可以用于此目的的类

然后解映射器应类似于:

TableRecord

要使用解映射器:

public class TableUnmapper implements RecordUnmapper<Table, TableRecord> {

    @Override
    public TableRecord unmap(Table t) throws MappingException {

        TableRecord r = new TableRecord(t.getSomeAttribute());

        r.setAttribute(t.getSomeOtherAttribute());

        return r;
    }

}