就是一个jackjson反序列化。
1、先定义接口/父类并
2、@JsonTypeInfo 标明反序列化规则。@JsonSubTypes标明实现类/子类
@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.EXTERNAL_PROPERTY, property = "typeName")
@JsonSubTypes({
@JsonSubTypes.Type(value = IcRetailLicense.class, name = "IcRetailLicense"),
@JsonSubTypes.Type(value = IcPartyInfo.class, name = "IcPartyInfo"),
@JsonSubTypes.Type(value = IcExpressPhone.class, name = "IcExpressPhone"),
})
public interface DataSourceEntityAbstract {
}
@JsonTypeInfo注解中设置了 use = JsonTypeInfo.Id.NAME 指定名称 include = JsonTypeInfo.As.EXTERNAL_PROPERTY 作为额外的扩展属性
property = "typeName" 识别码名为typeName
@JsonSubTypes中是一个@JsonSubTypes.Type数组,value为所要向下转型的子类,name为@JsonTypeInfo中propert="typeName"的值
类