gpt4 book ai didi

json - 如何反序列化并转换为 Long 所有数字?

转载 作者:行者123 更新时间:2023-12-05 00:41:15 33 4
gpt4 key购买 nike

如果值在整数范围内, jackson 将反序列化并转换为整数,而不是转换为长整数。我想将所有值转换为 Long。
是否存在简单的问题解决方案?

最佳答案

Jackson 将反序列化为您告诉它的类型,因此如果您将属性声明为 long 或 Long 类型,它将构造它。但也许你正在绑定(bind)到“无类型”结构,如 Map ?如果所有值都是 Long 类型,您可以适本地声明类型,例如:

Map<String,Long> map = objectMapper.readValue(json, new TypeReference<Map<String,Long>>() { });

或者可能能够为 Object.class 添加自定义解串器使用不同的处理方式(默认解串器是 org.codehaus.jackson.map.deser.UntypedObjectDeserializer )。

如果我知道您实际上想要做什么,这可能会有所帮助- IntegerLong都是数字,所以通常区分并不重要......那么需要Longs的原因是什么?

关于json - 如何反序列化并转换为 Long 所有数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3140760/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com