Dubbo Jackson序列化使用说明

文档版权:Creative Commons 3.0许可证 署名-禁止演绎

Jackson序列化提供了对基本数据类型和简单Bean的序列化的支持, 以及对类继承的支持。

已经经过测试的数据类型包括:

Boolean/boolean
Long/long
Integer/int
Double/double
Short/short
Float/float
Byte/byte
java.util.Date
org.joda.time.DateTime

以及由这些基本数据类型组成的数组和Bean, 如 int[], String[]等.

jackson序列化使用

<dubbo:protocol name="dubbo" port="20880" serialization="jackson" />

自定义ObjectMapper

默认情况下,Jackson序列化和反序列化时所使用的ObjectMapper定义如下:

  @Override
    public ObjectMapper getObjectMapper() {
        ObjectMapper objectMapper = new ObjectMapper(); objectMapper.disable(SerializationFeature.FAIL_ON_EMPTY_BEANS); // objectMapper.disable(SerializationFeature.FLUSH_AFTER_WRITE_VALUE); objectMapper.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES); objectMapper.setTimeZone(TimeZone.getDefault()); return objectMapper; }

如果需要自定义JacksonObjectMapperProvider, 开发者可以通过实现com.alibaba.dubbo.common.json.JacksonObjectMapperProvider接口进行自定义,并在/META-INF/dubbo/中添加文件 com.alibaba.dubbo.common.json.JacksonObjectMapperProvider,内容示例如下:

jackson=com.alibaba.dubbo.examples.jackson.jacksonprovider.CustomJacksonObjectMapperProvider

已知问题

  1. 不支持泛型对象的序列化, 如 List,Map类型的序列化和反序列化

转载于:https://www.cnblogs.com/devotion/p/5196420.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值