开发者社区> 问答> 正文

JsonUtils中InetAddress序列化问题

JsonUtils中的InetAddressSerializer,序列化InetAddress对象是

InetAddress address = (InetAddress)object; serializer.write(address.getHostName())

是获取getHostName来获取的,如果hosts中配置了主机名,那么这个值解析到的主机名 建议修改为 address.getHostAddress()直接获取IP PS:JsonUtils中

static { SerializeConfig.getGlobalInstance().put(InetAddress.class, JsonUtils.InetAddressSerializer.instance); SerializeConfig.getGlobalInstance().put(Inet4Address.class, JsonUtils.InetAddressSerializer.instance); SerializeConfig.getGlobalInstance().put(Inet6Address.class, JsonUtils.InetAddressSerializer.instance); }

这种方式是否太黑魔法,这样的话整个fastJson框架,在解析InetAddress对象的时候,全部是按照这种方式序列化的,而影响嵌入canal的应用程序?

原提问者GitHub用户kevinKaiF

展开
收起
绿子直子 2023-05-09 12:02:02 113 0
1 条回答
写回答
取消 提交回答
  • 希望保留hostname,而不是ip,特别针对是域名+vip模式的时候,域名会保持不变

    原回答者GitHub用户agapple

    2023-05-10 11:07:37
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载