Fastjson 循環参照


fastjson は循環参照をサポートしており、デフォルトでオンになっています。

参照サポートをオフにする

シリアル化された JSON がブラウザーまたは他の言語に送信される場合、これらの JSON パーサーは循環参照をサポートしません。データ損失の原因となります。 fastjson の循環参照サポートをオフにすることができます。参照検出をオフにすると、シリアル化のパフォーマンスも向上します。

#グローバル構成シャットダウン

  JSON.DEFAULT_GENERATE_FEATURE |= SerializerFeature.DisableCircularReferenceDetect.getMask();

非グローバル シャットダウン

  JSON.toJSONString(obj, SerializerFeature.DisableCircularReferenceDetect);

構文#{"$ref":"$"}参照ルート オブジェクト{"$ref":"@"}自分自身の言葉を引用してください{"$ref":".."}親オブジェクトを参照します親オブジェクトの親オブジェクトを参照しますパスベースの参照
説明
#{"$ref":"../.."}
{"$ref":"$.members[0].reportTo"}