相关疑难解决方法(0)

jackson注释中的多态性:@JsonTypeInfo用法

我想知道@JsonTypeInfo注释是否可以用于接口.我有一组应该序列化和反序列化的类.

这就是我想要做的.我有两个实现类Sub1,Sub2实现MyInt.某些模型类具有实现类型的接口参考.我想基于多态来反序列化对象

@JsonTypeInfo(use=JsonTypeInfo.Id.NAME, include=As.WRAPPER_OBJECT)
@JsonSubTypes({
    @Type(name="sub1", value=Sub1.class), 
    @Type(name="sub2", value=Sub2.class)})
public interface MyInt{
}

@JsonTypeName("sub1")
public Sub1 implements MyInt{
}

@JsonTypeName("sub2")
public Sub2 implements MyInt{
}
Run Code Online (Sandbox Code Playgroud)

我得到以下内容JsonMappingException:

意外的令牌(END_OBJECT),预期的FIELD_NAME:需要包含类型ID的JSON字符串

java polymorphism jackson deserialization

51
推荐指数
2
解决办法
5万
查看次数

标签 统计

deserialization ×1

jackson ×1

java ×1

polymorphism ×1