[解決済み] ハイバーネートの双方向マッピングに起因するjsonシリアライザの循環参照を解決するには?
2023-05-12 02:51:49
質問
POJOをJSONにシリアライズするシリアライザーを書いていますが、循環参照の問題で行き詰っています。Hibernateの双方向の一対多の関係では、親が子を参照し、子が親を参照し、ここで私のシリアライザーは死にます。(以下のコード例を参照してください)
このサイクルを断ち切るにはどうしたらよいでしょうか。オブジェクトの所有者ツリーを取得して、オブジェクト自体が所有者階層のどこかに存在するかどうかを確認することは可能ですか?参照が循環するかどうかを見つけるための他の方法は? またはこの問題を解決するための他のアイデアは?
どのように解決するのですか?
双方向の関係もJSONで表現できるのでしょうか?データ形式によっては、データモデリングにうまく適合しないものもあります。
オブジェクトグラフをトラバースする際にサイクルに対処する方法の1つは、(同一性比較を使用して)これまでに見たオブジェクトを追跡し、無限サイクルをトラバースするのを防ぐことです。
関連
-
[解決済み】Hibernateの例外「failed to lazily initialize a collection of role」の解決方法
-
Eclipse の問題 アクセス制限。タイプ 'jfxrt' はAPI解決されていません。
-
Solve モジュールのビルドに失敗しました。Error: ENOENT: no such file or directory エラー
-
ApplicationContextの起動エラーです。条件レポートを表示するには、アプリケーションを'de'で再実行します。
-
無効なメソッド宣言
-
FindBugの使用概要
-
API の戻り値を処理するために ResponseEntity を使用する
-
Java の double データ型における 0.0 と -0.0 の問題
-
linux ant Resolve error: main class not found or couldn't be loaded org.apache.tools.ant.launcher.
-
[解決済み] 循環構造をJSONのような形式で印刷するにはどうすればよいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
undefined[sonar] sonar:デフォルトのスキャンルール
-
アクセス制限です。タイプ 'JPEGCodec' は API ではない ☞My Blog Github ☜ ホームページを見る
-
Jsoup-Crawlingの動作
-
が 'X-Frame-Options' を 'sameorigin' に設定したため、フレーム内に存在する。
-
名前 'XXX' を持つ Bean の作成に失敗しました。自動依存関係の注入に失敗しました 解決方法
-
Java Notes 005_この行に複数のマーカーがある - キーを変数に解決できない - シンタックスエラー、ins
-
java マイクロソフト払い戻し予期せぬサーバーからのファイルの終了
-
アクセス制限の解決方法: ---- in Java
-
WeChat小プログラム Bluetooth通信 Bluetoothモジュールデモ
-
[解決済み] なぜJavaにはtransientフィールドがあるのですか?