org.json.simple लाइब्रेरी हमें जावा में JSON डेटा को पढ़ने और लिखने की अनुमति देती है। दूसरे शब्दों में, हम JSON ऑब्जेक्ट को एनकोड और डीकोड कर सकते हैं। org.json.simple पैकेज में JSONValue, JSONObject, JSONArray, JsonString और JsonNumber जैसी महत्वपूर्ण क्लासेस होती हैं। JSON प्रोग्राम चलाने के लिए हमें json-simple.jar फाइल इंस्टॉल करने की आवश्यकता होती है जबकि org.json लाइब्रेरी में जावा के लिए JSON पार्स करने के लिए क्लासेस होती हैं। यह JSON और XML, HTTP हेडर, कुकीज़, और CDL के बीच कन्वर्जन भी करता है। org.json पैकेज में JSONObject, JSONTokener, JSONWriter, JSONArray, CDL, Cookie और CookieList जैसी महत्वपूर्ण क्लासेस होती हैं। JSON प्रोग्राम चलाने के लिए हमें json.jar फाइल इंस्टॉल करने की आवश्यकता होती है।
org.json.simple पैकेज के लिए उदाहरण
import org.json.simple.JSONObject;
public class SimpleJsonTest {
public static void main(String[] args) {
JSONObject jsonObj = new JSONObject();
jsonObj.put("empName", "Raja");
jsonObj.put("employeeId", "115");
jsonObj.put("age", "30");
System.out.println(jsonObj.toJSONString());
}
}
आउटपुट
{"empName":"Raja","employeeId":"115","age":"30"}
org.json पैकेज के लिए उदाहरण
import org.json.*;
public class JSONTest {
public static void main(String args[]) throws JSONException {
String json = "{" + "Name : Jai," + "Age : 25, " + "Salary: 25000.00 " + "}";
JSONObject jsonObj = new JSONObject(json);
System.out.println(jsonObj.toString());
}
}
आउटपुट
{"Salary":25000,"Age":25,"Name":"Jai"}
विस्तृत तुलना
| पहलू | org.json.simple (json-simple) | org.json (json.org) |
|---|---|---|
| मूल | Google Code / FangYidong | Douglas Crockford (JSON आविष्कारक) |
| लाइसेंस | Apache 2.0 | JSON लाइसेंस (फ्री सॉफ्टवेयर) |
| Maven आर्टिफैक्ट | com.googlecode.json-simple:json-simple | org.json:json |
| मुख्य क्लासेस | JSONObject, JSONArray, JSONValue | JSONObject, JSONArray, JSONTokener, JSONWriter |
| पार्सिंग | JSONValue.parse() | new JSONObject(string) / JSONTokener |
| सीरियलाइजेशन | toJSONString() | toString() / JSONWriter |
| XML कन्वर्जन | नहीं | हां (XML.toJSONObject(), XML.toString()) |
| HTTP/कुकी सपोर्ट | नहीं | हां (Cookie, CookieList, HTTP हेडर) |
| CDL (कॉमा-डिलिमिटेड) | नहीं | हां (CDL क्लास) |
| स्ट्रीमिंग API | नहीं | नहीं (केवल ट्री मॉडल) |
| मेंटेनेंस स्टेटस | कम सक्रिय | सक्रिय रूप से मेंटेन |
| प्रदर्शन | मध्यम | मध्यम |
API उपयोग तुलना
// json-simple
JSONObject obj = new JSONObject();
obj.put("key", "value");
String json = obj.toJSONString();
// पार्सिंग
Object parsed = JSONValue.parse(jsonStr);
JSONObject obj2 = (JSONObject) parsed;
// org.json
JSONObject obj = new JSONObject();
obj.put("key", "value");
String json = obj.toString();
// पार्सिंग
JSONObject obj2 = new JSONObject(jsonStr);
// या
JSONTokener tokener = new JSONTokener(jsonStr);
JSONObject obj3 = new JSONObject(tokener);
कौन सा चुनें?
- org.json: यदि XML कन्वर्जन, HTTP/कुकी हैंडलिंग, CDL, या स्टैंडर्ड रेफरेंस इम्प्लीमेंटेशन चाहिए
- json-simple: सरल केसेस के लिए, हल्का, Maven Central पर आसान उपलब्धता
- बेहतर विकल्प: Jackson, Gson, JSON-B (JSR 367) - अधिक फीचर्स, बेहतर परफॉरमेंस, सक्रिय मेंटेनेंस
निर्भरताएं (Maven)
<!-- json-simple -->
<dependency>
<groupId>com.googlecode.json-simple</groupId>
<artifactId>json-simple</artifactId>
<version>1.1.1</version>
</dependency>
<!-- org.json -->
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<version>20231013</version>
</dependency>