जावा में JSON के साथ कार्य: व्यवहार में पार्सिंग और सीरियलाइज़ेशन

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

जावा में JSON के साथ कार्य का परिचय

\n

JSON (JavaScript Object Notation) एक हल्का डेटा विनिमय प्रारूप है जो आधुनिक वेब अनुप्रयोगों, API और माइक्रोसर्विसेज़ में व्यापक रूप से उपयोग किया जाता है। जावा में, JSON के साथ कार्य विकास का एक अभिन्न अंग है: कॉन्फ़िगरेशन फ़ाइलों को पढ़ने से लेकर RESTful सेवाओं के साथ इंटरैक्ट करने तक। इस लेख में, हम व्यवहार में समझेंगे कि दो सबसे लोकप्रिय लाइब्रेरीज़: Jackson और Gson का उपयोग करके पार्सिंग (JSON को Java-ऑब्जेक्ट में बदलना) और सीरियलाइज़ेशन (Java-ऑब्जेक्ट को JSON में बदलना) कैसे करें।

\n

हम वास्तविक कोड उदाहरण देखेंगे, नेस्टेड संरचनाओं को संसाधित करना सीखेंगे और सामान्य त्रुटियों का विश्लेषण करेंगे। लेख के अंत तक, आप किसी भी Java प्रोजेक्ट में आत्मविश्वास से JSON के साथ कार्य कर पाएंगे।

\n\n

1. JSON के साथ कार्य के लिए मुख्य लाइब्रेरीज़

\n

Jackson बनाम Gson: क्या चुनें?

\n

Java बाजार में JSON के साथ कार्य करने के लिए कई लाइब्रेरीज़ हैं, लेकिन उनमें से दो डी-फैक्टो मानक बन गई हैं:

\n
    \n
  • Jackson — अधिक प्रदर्शनशील और कार्यात्मक लाइब्रेरी। यह एनोटेशन, स्ट्रीमिंग प्रोसेसिंग और कस्टम सीरियलाइज़र का समर्थन करती है। एंटरप्राइज़ प्रोजेक्ट्स के लिए अनुशंसित।
  • \n
  • Gson — Google की सरल और हल्की लाइब्रेरी। छोटे प्रोजेक्ट्स और तेज़ प्रोटोटाइपिंग के लिए आदर्श।
  • \n
\n

इनमें से किसी को भी जोड़ने के लिए, pom.xml (Maven) या build.gradle (Gradle) में निर्भरता जोड़ना पर्याप्त है।

\n\n

Jackson को जोड़ना (Maven)

\n
<dependency>\n    <groupId>com.fasterxml.jackson.core</groupId>\n    <artifactId>jackson-databind</artifactId>\n    <version>2.15.2</version>\n</dependency>
\n\n

Gson को जोड़ना (Maven)

\n
<dependency>\n    <groupId>com.google.code.gson</groupId>\n    <artifactId>gson</artifactId>\n    <version>2.10.1</version>\n</dependency>
\n\n

2. JSON पार्सिंग: स्ट्रिंग से Java-ऑब्जेक्ट में

\n

पार्सिंग JSON स्ट्रिंग को Java-ऑब्जेक्ट में बदलने की प्रक्रिया है। आइए एक सरल User वर्ग के उदाहरण पर दोनों दृष्टिकोणों पर विचार करें।

\n\n

डेटा मॉडल बनाना

\n
public class User {\n    private String name;\n    private int age;\n    private String email;\n\n    // खाली कंस्ट्रक्टर अनिवार्य है!\n    public User() {}\n\n    // गेटर्स और सेटर्स\n    public String getName() { return name; }\n    public void setName(String name) { this.name = name; }\n    public int getAge() { return age; }\n    public void setAge(int age) { this.age = age; }\n    public String getEmail() { return email; }\n    public void setEmail(String email) { this.email = email; }\n}
\n\n

Jackson के साथ पार्सिंग

\n
import com.fasterxml.jackson.databind.ObjectMapper;\n\npublic class JacksonParsingExample {\n    public static void main(String[] args) throws Exception {\n        String json = "{\\"name\\":\\"इवान\\",\\"age\\":30,\\"email\\":\\"ivan@example.com\\"}";\n        \n        ObjectMapper mapper = new ObjectMapper();\n        User user = mapper.readValue(json, User.class);\n        \n        System.out.println("नाम: " + user.getName());\n        System.out.println("आयु: " + user.getAge());\n    }\n}
\n\n

Gson के साथ पार्सिंग

\n
import com.google.gson.Gson;\n\npublic class GsonParsingExample {\n    public static void main(String[] args) {\n        String json = "{\\"name\\":\\"मारिया\\",\\"age\\":25,\\"email\\":\\"maria@example.com\\"}";\n        \n        Gson gson = new Gson();\n        User user = gson.fromJson(json, User.class);\n        \n        System.out.println("नाम: " + user.getName());\n        System.out.println("ईमेल: " + user.getEmail());\n    }\n}
\n\n

3. सीरियलाइज़ेशन: Java-ऑब्जेक्ट से JSON में

\n

सीरियलाइज़ेशन विपरीत प्रक्रिया है: हम एक Java-ऑब्जेक्ट लेते हैं और इसे JSON स्ट्रिंग में बदलते हैं। यह आवश्यक है, उदाहरण के लिए

ब्लॉग

पुस्तक अनुशंसाएँ