4

これは、私が 1 か月前に行った質問に関するものです。

この質問では、json シリアライズ時に遅延初期化例外を回避するための答えは、遅延初期化例外を引き起こす変数に null を設定することでした。ただし、クラスに多くの依存関係がある場合を考慮してください。コードベースが成長し、jsonのシリアル化の問題を回避するために、コード内のどこにでもある面倒な変数にnullを設定する必要があります。コードベースが大きい場合、メソッドはきれいに見えません。

見栄えの悪いコード例を以下に示します。

//setting some variables to avoid lazy init exception in jackson mapper serialization
batch.setEnrollmentList(null);
List<BatchSchedule> scheduleList = (ArrayList<BatchSchedule>) batch.getBatchScheduleList();

            for (BatchSchedule batchSchedule : scheduleList) {
                batchSchedule.setBatch(null);
            }
            batch.getLecturer().setBatchList(null);
            batch.getLecturer().setSubjectList(null);
            batch.getSubject().setBatchList(null);
            batch.getSubject().setLecturerList(null);

この問題を処理するためのより良い方法を教えてください。ありがとう。

4

1 に答える 1

3

@JsonIgnoreシリアライズ中にジャクソンが無視するように、遅延プロパティに注釈を付けることができます。

于 2012-12-08T15:53:43.033 に答える