jackson 序列化 通过给定Class映射 与抽象类的映射



//如果已知想要序列化的类型 可以使用TypeReference来进行处理
//List<MyBean> result = mapper.readValue(src, new TypeReference<List<MyBean>>() { });


//如果是未知情况可以使用TypeFactory来进行动态反射序列化
//apper.readValue(src, TypeFactory.defaultInstance().constructCollectionType(ArrayList.class, MyBean.class));


//另外如果你的类当中的某个属性是抽象类 那么在反序列化的时候可以通过
@JsonDeserialize(as=Impl.class) 来进行处理


//如果属性是 List 内部元素是抽象类
For java.util.List values you would use @JsonDeserialize(contentAs=ValueTypeImpl.class) instead, and for java.util.Map keys, @JsonDeserialize(keyAs=KeyTypeImpl.class).





//可以设置SimpleModule 进行个性化设置
SimpleModule module = new SimpleModule();
module.addSerializer(Date.class, new JsonSerializer<Date>() {
@Override
public void serialize(Date arg0, JsonGenerator jgen,
SerializerProvider arg2) throws IOException,
JsonProcessingException {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
jgen.writeString(format.format(arg0));
}
});
mapper.registerModule(module);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值