gpt4 book ai didi

java - FasterXML Jackson Smile 与 json

转载 作者:行者123 更新时间:2023-11-30 08:49:00 25 4
gpt4 key购买 nike

我正在浏览一些在线资源,发现 jackson可分别用于java对象和json字符串的序列化和反序列化。但同时我发现了一个叫做 smile 的东西.下面是我的疑惑:

  1. jackson json 库是否序列化为基于文本的字节流以用于 json 表示
  2. 微笑是否序列化为非文本,即用于相同二进制表示的二进制字节流
  3. 如果上述假设是正确的,那么 jackson json 库中可用的字节可以被其他理解 json 的库(比如一些 python、ruby json 序列化/反序列化库)反序列化。但是对于 smile 是不可能的,因为它可能有一个非常具体的 java 对象的二进制表示。我说得对吗?

如果我不正确,请指导我找到答案。谢谢。

由于我是计算机科学领域的新手,如果这个问题符合堆栈溢出标准,我深表歉意。

最佳答案

普通 JSON 标记和 Smile 之间的主要区别在于 Smile 是 JSON 的二进制标记版本。由于 smile 更紧凑,它在反序列化时的开销更少,并且是大型和复杂有效负载的更好选择。

何时使用每个标记:

  • JSON/XML - 当您想要确保 API 的兼容性,同时将其与各种序列化协议(protocol)分离时。每一种都有变体,带有嵌入式元数据,可以为数据提供更多上下文。
  • BSON/Smile/Kryo - 当您需要速度时。这可以是实时应用程序、数据收集、内部服务器通信。

这两种格式是兼容的:您可以发送 Smile 并通过包装适当的解码器将其解码为 JSON。

Some benchmark values for each

关于java - FasterXML Jackson Smile 与 json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31652452/

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