JSONObject.toJSONString 详细介绍

发布时间 2023-10-10 18:45:07作者: 刘俊涛的博客

JSONObject.toJSONString 详细介绍

String jsonString = JSONObject.toJSONString(sendMap, SerializerFeature.DisableCircularReferenceDetect);

  1. JSONObject.toJSONString 这是 FastJSON 中的一个方法,用于将 Java 对象转换为 JSON 字符串。

  2. sendMap 这是要被转换成 JSON 字符串的 Java 对象。在这里,它被称为 sendMap

  3. SerializerFeature.DisableCircularReferenceDetect 这是一个 FastJSON 的序列化特性(SerializerFeature)。DisableCircularReferenceDetect 用于禁用循环引用检测。当 Java 对象中存在循环引用(即 A 对象引用了 B 对象,而 B 对象又引用了 A 对象),默认情况下 FastJSON 会尝试检测并处理这种情况,但有时候你可能希望手动禁用这种检测。

    通过设置 DisableCircularReferenceDetect,你告诉 FastJSON 在序列化时不去检测和处理循环引用。这可能导致生成的 JSON 字符串包含循环引用,需要谨慎使用,因为在某些情况下这可能导致 JSON 解析时的问题。

JSONObject.toJSONString的默认编码规则:

  1. 特殊字符: 默认情况下,FastJSON 会对 JSON 字符串中的特殊字符进行转义,以确保生成的 JSON 字符串是有效的。例如,双引号会被转义为 \",反斜杠为 \\,换行符为 \n 等。
  2. Unicode 编码: 默认情况下,FastJSON 会将非 ASCII 字符(Unicode 范围之外的字符)使用 \uXXXX 形式进行编码,其中 XXXX 是字符的 Unicode 编码。这是为了确保 JSON 字符串是 ASCII 兼容的。



欢迎关注公-众-号【TaonyDaily】、留言、评论,一起学习。

公众号

Don’t reinvent the wheel, library code is there to help.

文章来源:刘俊涛的博客


若有帮助到您,欢迎点赞、转发、支持,您的支持是对我坚持最好的肯定(_)