@JsonManagedReference और @JsonBackReference टिप्पणियां एक द्विदिशात्मक . में JSON संरचना बनाने के लिए उपयोग किया जा सकता है मार्ग। @JsonManagedReference एनोटेशन एक आगे का संदर्भ . है जिसमें क्रमांकन प्रक्रिया के दौरान शामिल है जबकि @JsonBackReference एनोटेशन एक बैकरेफरेंस . है जो क्रमांकन प्रक्रिया के दौरान छूट जाता है।
नीचे दिए गए उदाहरण में, हम @JsonManagedReference और @JsonBackReference एनोटेशन लागू कर सकते हैं।
उदाहरण
आयात करें। core.JsonProcessingException; पब्लिक क्लास मैनेज्ड रेफरेंसबैक रेफरेंसटेस्ट {सार्वजनिक स्थैतिक शून्य मुख्य (स्ट्रिंग args []) JsonProcessingException फेंकता है {BackReferenceBeanTest testBean =new BackReferenceBeanTest (110, "साई चैतन्य"); मैनेज्ड रेफरेंसबीनटेस्ट बीन =नया मैनेज्ड रेफरेंसबीनटेस्ट (135, "आदित्य राम", टेस्टबीन); testBean.addकर्मचारी (बीन); ऑब्जेक्टमैपर मैपर =नया ऑब्जेक्टमैपर (); स्ट्रिंग jsonString =mapper.writerWithDefaultPrettyPrinter ()। writeValueAsString (बीन); System.out.println (jsonString); }}क्लास मैनेज्ड रेफरेंसबीनटेस्ट { public int empId =115; सार्वजनिक स्ट्रिंग empName ="राजा रमेश"; @JsonManagedReference सार्वजनिक BackReferenceBeanTest प्रबंधक; सार्वजनिक प्रबंधित संदर्भ बीनटेस्ट (int empId, स्ट्रिंग empName, BackReferenceBeanTest प्रबंधक) {this.empId =empId; this.empName =empName; यह। प्रबंधक =प्रबंधक; }}वर्ग BackReferenceBeanTest { public int empId =125; सार्वजनिक स्ट्रिंग empName ="जय देव"; @JsonBackReference सार्वजनिक सूचीआउटपुट
{ "empId" :135, "empName" :"Adithya Ram", "manager" :{ "empId" :110, "empName" :"Sai Chaitanya" }}