Gson लाइब्रेरी GsonBuilder के साथ एक कस्टम सीरिएलाइज़र को पंजीकृत करके कस्टम सीरिएलाइज़र निर्दिष्ट करने का एक तरीका प्रदान करती है अगर हमें एक जावा ऑब्जेक्ट को JSON में बदलने के लिए एक तरीका चाहिए . हम serialize() . को ओवरराइड करके एक कस्टम सीरिएलाइज़र बना सकते हैं com.google.gson.JsonSerializer . की विधि कक्षा.
नीचे दिए गए उदाहरण में, कस्टम क्रमांकन का कार्यान्वयन JSON का।
उदाहरण
आयात करें नया पासवर्डसेरियलाइज़र ())। सेटप्रेट्टीप्रिंटिंग ()। बनाएं (); छात्र छात्र =नया छात्र ("आदित्य", "जय", 25, "चेन्नई"); छात्र.सेटपासवर्ड (नया पासवर्ड ("व्यवस्थापक@123")); System.out.println (gson.toJson (छात्र)); }}वर्ग PasswordSerializer JsonSerializer को लागू करता है {@Override public JsonElement serialize (पासवर्ड src, टाइप typeOfSrc, JsonSerializationContext प्रसंग) { नया JsonPrimitive (नया StringBuffer (src.getPassword ())। toString ()); }}// छात्र वर्ग कक्षा छात्र {निजी स्ट्रिंग प्रथम नाम; निजी स्ट्रिंग अंतिम नाम; निजी अंतर उम्र; निजी स्ट्रिंग पता; निजी पासवर्ड पासवर्ड; पब्लिक स्टूडेंट (स्ट्रिंग फर्स्टनाम, स्ट्रिंग लास्टनाम, इंट एज, स्ट्रिंग एड्रेस) {सुपर (); यह। पहला नाम =पहला नाम; यह अंतिम नाम =अंतिम नाम; यह उम्र =उम्र; यह पता =पता; } सार्वजनिक स्ट्रिंग getFirstName () { पहला नाम लौटाएं; } सार्वजनिक शून्य सेटफर्स्टनाम (स्ट्रिंग फर्स्टनाम) {this.firstName =firstName; } सार्वजनिक स्ट्रिंग getLastName () {वापसी अंतिम नाम; } सार्वजनिक शून्य सेटलास्टनाम (स्ट्रिंग अंतिम नाम) { यह अंतिम नाम =अंतिम नाम; } सार्वजनिक int getAge () {वापसी आयु; } सार्वजनिक शून्य सेटएज (इंट आयु) { यह आयु =आयु; } सार्वजनिक स्ट्रिंग getAddress () {वापसी पता; } सार्वजनिक शून्य सेट पता (स्ट्रिंग पता) { यह पता =पता; } सार्वजनिक पासवर्ड getPassword() { पासवर्ड लौटाएं; } सार्वजनिक शून्य सेट पासवर्ड (पासवर्ड पासवर्ड) { यह पासवर्ड =पासवर्ड; } सार्वजनिक स्ट्रिंग टूस्ट्रिंग () {वापसी "छात्र [" + "प्रथम नाम =" + प्रथम नाम + ", अंतिम नाम =" + अंतिम नाम + ", आयु =" + आयु + ", पता =" + पता + "]"; }}// पासवर्ड वर्ग क्लास पासवर्ड {निजी स्ट्रिंग पासवर्ड; सार्वजनिक पासवर्ड (स्ट्रिंग पासवर्ड) {सुपर (); यह पासवर्ड =पासवर्ड; } सार्वजनिक स्ट्रिंग getPassword () { पासवर्ड लौटाएं; } सार्वजनिक शून्य सेटपासवर्ड (स्ट्रिंग पासवर्ड) { यह पासवर्ड =पासवर्ड; }}आउटपुट
{ "firstName":"Adithya", "lastName":"Jai", "age":25, "address":"Chennai", "password":"admin@123"}