[英]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.