1

我有如下代码。

    @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type", visible = true, defaultImpl = Default.class)
@JsonSubTypes({ 
    @Type(value = T1.class, name = "t1"), 
    @Type(value = T2.class, name = "t2"),}
) 
public abstract class T{
}

其他班级可能会预订

class Foo{
T t;
T anotherT;
}

type但是,如果未知,它将返回一个 Default 实例。如果我没有指定 defaultImp,jackson 只会抛出异常。

 Could not resolve type id 't3' into a subtype of T

我已经DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES设置为假了。

我需要的是如果类型不是't1'或't2',只需将值设置为null,然后继续解析。我该怎么做?

谢谢

4

0 回答 0