我正在使用JOOQ来操作数据库,现在我遇到了一个问题。有一个多态类OrderEntry
@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.EXISTING_PROPERTY, property = "type", visible = true)
@JsonSubTypes(value = {
@JsonSubTypes.Type(value = ReissueOrderEntry.class, name = "reissue"),
@JsonSubTypes.Type(value = RawOrderEntry.class, name = "raw"),
@JsonSubTypes.Type(value = FreebieOrderEntry.class, name = "freebie"),
@JsonSubTypes.Type(value = ReplaceOrderEntry.class, name = "replace")
})
public class OrderEntry extends OrderObject {
String type;
}
它将根据字段"type"反序列化为不同的对象。但在jooq的反序列化中,它只会被反序列化为OrderEntry。代码
我该怎么解决?
我假设您正在尝试使用内置的ConverterProvider
逻辑来使用Jackson,例如在编写以下内容时
record.into(OrderEntry.class);
jOOQ从类路径加载Jackson,而不加载任何额外的模块/插件。如果你想使用额外的插件,那么你必须推出自己的ConverterProvider
,它实现了加载额外的插件。