Gson Java के लिए एक JSON लाइब्रेरी है, जिसे Google द्वारा बनाया गया है। Gson का उपयोग करके, हम JSON उत्पन्न कर सकते हैं और JSON को Java ऑब्जेक्ट्स में बदल सकते हैं। हम GsonBuilder इंस्टेंस बनाकर और create() मेथड को कॉल करके Gson इंस्टेंस बना सकते हैं। हम TypeToken क्लास का उपयोग करके डुप्लिकेट कुंजियों के बिना JSON को पार्स कर सकते हैं। यदि हम Map के लिए टाइप लिटरल बनाना चाहते हैं, तो हम एक खाली अनाम आंतरिक क्लास बना सकते हैं। यदि हम डुप्लिकेट कुंजी डालने का प्रयास करते हैं, तो यह रनटाइम पर एक त्रुटि उत्पन्न करेगा: "Exception in thread "main" com.google.gson.JsonSyntaxException: duplicate key"
सिंटैक्स
public class TypeToken<T> extends Object
उदाहरण
import java.lang.reflect.Type;
import java.util.Map;
import com.google.gson.*;
import com.google.gson.reflect.TypeToken;
public class JsonWithoutDuplicateKeysTest {
public static void main(String args[]) throws Exception {
String json = "{\"123\":\"abc\", \"124\":\"def\", \"125\":\"ghi\"}";
Gson gson = new GsonBuilder().setPrettyPrinting().create();
Type mapType = new TypeToken<Map<Integer, String>>() {}.getType();
Map<String, String> map = gson.fromJson(json, mapType);
System.out.println(map);
}
}
आउटपुट
{123=abc, 124=def, 125=ghi}