द जैक्सन API JSON डेटा के साथ काम करने के लिए कई तरीके प्रदान करता है। जैक्सन एपीआई का उपयोग करके, हम जावा ऑब्जेक्ट को JSON स्ट्रिंग में बदल सकते हैं और ऑब्जेक्ट को JSON स्ट्रिंग से सुधार सकते हैं। हम एक कस्टम धारावाहिक . लागू कर सकते हैं StdSerializer . का उपयोग करके वर्ग और serialize(T value, JsonGenerator gen, SerializerProvider प्रदाता) को ओवरराइड करने की आवश्यकता है विधि, पहला तर्क मान क्रमबद्ध करने के लिए मूल्य का प्रतिनिधित्व करता है (शून्य नहीं हो सकता ), दूसरा तर्क जनरल परिणामी Json सामग्री और तीसरे तर्क प्रदाता . को आउटपुट करने के लिए उपयोग किए जाने वाले जनरेटर का प्रतिनिधित्व करता है प्रदाता का प्रतिनिधित्व करता है जिसका उपयोग वस्तुओं के मूल्य को क्रमबद्ध करने के लिए धारावाहिक प्राप्त करने के लिए किया जा सकता है।
सिंटैक्स
सार्वजनिक अमूर्त शून्य क्रमबद्धता (T मान, JsonGenerator gen, SerializerProvider प्रदाता) IOException को फेंकता है
उदाहरण
आयात करें। jackson.databind.ser.std.StdSerializer; सार्वजनिक वर्ग जैक्सनसेरियलाइज़टेस्ट {सार्वजनिक स्थैतिक शून्य मुख्य (स्ट्रिंग [] args) अपवाद फेंकता है {जैक्सनसेरियलाइज़टेस्ट टेस्ट =नया जैक्सनसेरियलाइज़टेस्ट (); test.serialize (); } सार्वजनिक शून्य क्रमबद्ध करें () अपवाद फेंकता है {उपयोगकर्ता उपयोगकर्ता =नया उपयोगकर्ता (); user.setFirstName ("राजा"); user.setLastName ("रमेश"); ऑब्जेक्टमैपर मैपर =नया ऑब्जेक्टमैपर (); सरल मॉड्यूल मॉड्यूल =नया सरल मॉड्यूल (); मॉड्यूल.एडसेरियलाइज़र (उपयोगकर्ता। वर्ग, नया उपयोगकर्तासेरियलाइज़र ()); mapper.registerModule (मॉड्यूल); स्ट्रिंग jsonStr =mapper.writerWithDefaultPrettyPrinter ()। writeValueAsString (उपयोगकर्ता); // सुंदर प्रिंट System.out.println (jsonStr); }}// उपयोक्ता क्लासक्लास उपयोक्ता Serializable को लागू करता है {निजी स्ट्रिंग प्रथम नाम; निजी स्ट्रिंग अंतिम नाम; सार्वजनिक स्ट्रिंग getFirstName () {पहले नाम लौटाएं; } सार्वजनिक शून्य सेटफर्स्टनाम (स्ट्रिंग फर्स्टनाम) {this.firstName =firstName; } सार्वजनिक स्ट्रिंग getLastName () {वापसी अंतिम नाम; } सार्वजनिक शून्य सेटलास्टनाम (स्ट्रिंग अंतिम नाम) { यह अंतिम नाम =अंतिम नाम; }}// UserSerializer classclass UserSerializer StdSerializerआउटपुट
{ "firstName" :"Raja", "lastName" :"Ramesh"}