जैक्सन क्रमांकन में शून्य फ़ील्ड मानों को संभालना
जैक्सन, एक लोकप्रिय जावा क्रमांकन लाइब्रेरी, अपने क्रमांकन व्यवहार को अनुकूलित करने के लिए विभिन्न कॉन्फ़िगरेशन विकल्प प्रदान करती है। एक सामान्य परिदृश्य उन फ़ील्ड मानों के क्रमबद्धता को दबाना है जो शून्य हैं। यह सुनिश्चित करता है कि केवल गैर-शून्य गुण ही क्रमबद्ध आउटपुट में शामिल किए गए हैं। क्रमांकन के दौरान फ़ील्ड मान।
1. क्रमांकन समावेशन का उपयोग करना:
ऑब्जेक्टमैपर मैपर = नया ऑब्जेक्टमैपर(); मैपर.सेटसेरियलाइजेशनइनक्लूजन(JsonInclude.Include.NON_NULL);
यह वैश्विक कॉन्फ़िगरेशन उन सभी वर्गों के सभी क्षेत्रों पर लागू होता है जो ऑब्जेक्टमैपर द्वारा संसाधित होते हैं। यह सुनिश्चित करता है कि शून्य मान वाला कोई भी फ़ील्ड क्रमबद्ध आउटपुट से हटा दिया जाएगा।
2। @JsonInclude एनोटेशन का उपयोग करना:ObjectMapper mapper = new ObjectMapper(); mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
@JsonInclude(Include.NON_NULL) सार्वजनिक वर्ग कुछ वर्ग { निजी स्ट्रिंग someValue; }
किसी क्लास या गेट्टर विधि में @JsonInclude एनोटेशन लागू करने से आप विशिष्ट गुणों या उपवर्गों के लिए क्रमांकन व्यवहार निर्दिष्ट कर सकते हैं। Include.NON_NULL सेट करके, यह इंगित करता है कि उस फ़ील्ड के लिए केवल गैर-शून्य मानों को क्रमबद्ध किया जाना चाहिए।
वैकल्पिक दृष्टिकोणObjectMapper mapper = new ObjectMapper(); mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
वैकल्पिक रूप से, आप @JsonInclude एनोटेशन का उपयोग कर सकते हैं किसी विशेष संपत्ति के लिए गेटर विधि में संपत्ति को सशर्त रूप से क्रमबद्ध करने के लिए केवल तभी जब उसका मूल्य नहीं होता है null.
@JsonInclude(मान = JsonInclude.Include.NON_NULL, शर्त = JsonInclude.Include.Condition.NON_NULL) सार्वजनिक स्ट्रिंग getSomeValue() { कुछ मूल्य लौटाएँ; }
अतिरिक्त विचार@JsonInclude(value = JsonInclude.Include.NON_NULL, condition = JsonInclude.Include.Condition.NON_NULL) public String getSomeValue() { return someValue; }
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3