簡體   English   中英

序列化到json響應時避免hibernate延遲初始化異常的更好方法

[英]A better way to avoid hibernate lazy init exception when serializing in to a json response

這是參考我一個月前提出的問題

在這個問題中 ,在json序列化時避免延遲初始化異常的答案是將null設置為導致延遲初始化異常的變量。 但是考慮一下這個類有很多依賴關系。 現在隨着代碼庫的增長而每次我必須在代碼中的每個地方設置null到麻煩的變量以避免json序列化問題。 當代碼庫很大時,該方法看起來不整潔。

下面顯示的示例代碼看起來不太好。

//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);

能否請你給我一個更好的方法來解決這個問題。 謝謝。

您可以使用@JsonIgnore注釋延遲屬性,以便Jackson在序列化時忽略它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM