使用 jOOQ 3.8.6,由于获取的记录中存在一些 UDT ,我不得不实现记录映射器以从 Record 转换为 Pojo。现在,我想知道从 Pojo 创建 Record 时如何做相反的事情。
public void update(MyTable pojo){
MyTableRecord record = dsl.newRecord(tables.MyTable.MY_TABLE, pojo);
record.store();
}
Run Code Online (Sandbox Code Playgroud)
我有一个
org.jooq.exception.MappingException: An error ocurred when mapping record from class tables.pojos.MyTable
Run Code Online (Sandbox Code Playgroud)
因为一个
Caused by: org.jooq.exception.DataTypeException: Cannot convert from MyType (class udt.pojos.MyType) to class udt.records.MyTypeRecord
Run Code Online (Sandbox Code Playgroud)
我想我必须注册一个从 POJO 到 Record 的自定义转换器。有谁知道怎么做?
您正在寻找该RecordUnmapper功能(问题#2520),该功能截至 jOOQ 3.8 尚未实现
您至少有以下两种可能的解决方法:
RecordMapper,而是使用Converteror 数据类型Binding。这些将允许您以两种方式实现转换,它不仅适用于您的 POJO,还适用于您的记录DSLContext.newRecord(Table, Object)| 归档时间: |
|
| 查看次数: |
3802 次 |
| 最近记录: |