द @JsonRawValue एनोटेशन का उपयोग दोनों विधियों और क्षेत्रों के लिए घोषित क्षेत्र या संपत्ति को क्रमबद्ध करने के लिए किया जा सकता है। उदाहरण के लिए, यदि हमारे जावा वर्ग में एक स्ट्रिंग फ़ील्ड है, तो JSON मान उद्धरणों के भीतर संलग्न है (“ " ) लेकिन जब हम @JsonRawValue . के साथ फ़ील्ड को एनोटेट करते हैं एनोटेशन, जैक्सन लाइब्रेरी उद्धरणों को छोड़ देती है।
सिंटैक्स
@Target(value={ANNOTATION_TYPE,METHOD,FIELD})@Retention(value=RUNTIME)public @interface JsonRawValue
नीचे दिए गए उदाहरण में, empAddress फ़ील्ड एक JSON स्ट्रिंग है। यह JSON स्ट्रिंग कर्मचारी . के अंतिम JSON स्ट्रिंग के एक भाग के रूप में क्रमबद्ध है वस्तु।
उदाहरण
आयात करें JsonProcessingException फेंकता है {ऑब्जेक्टमैपर मैपर =नया ऑब्जेक्टमैपर (); स्ट्रिंग jsonString =mapper.writerWithDefaultPrettyPrinter ()। writeValueAsString (नया कर्मचारी ()); System.out.println (jsonString); }}// कर्मचारी वर्गवर्ग कर्मचारी { public int empId =115; सार्वजनिक स्ट्रिंग empName ="साई चैतन्य"; @JsonRawValue सार्वजनिक स्ट्रिंग empAddress ="{\"doorNumber\":1118, \"street\":\"IDPL कॉलोनी\", "+"\"city\":\"Hyderabad\"}";}आउटपुट
{ "empId" :115, "empName" :"Sai Chaitanya", "empAddress" :{"doorNumber":1118, "street":"IDPL कॉलोनी", "सिटी":"Hyderabad"}}