JSON কে Java Object এ রূপান্তর করা (Deserialization)

JSON.simple এর মাধ্যমে Custom Object Deserialization - জেসন.সিম্পল (Json.Simple) - Java Technologies

291

JSON Deserialization হল প্রক্রিয়া যেখানে JSON ডেটা (যা সাধারণত স্ট্রিং বা JSON ফাইল হিসেবে থাকে) Java Object-এ রূপান্তরিত করা হয়। JSON.simple লাইব্রেরি ব্যবহার করে এই প্রক্রিয়াটি খুব সহজে করা যায়। এটি JSON string থেকে Java Object তৈরি করতে সহায়তা করে।

JSON.simple লাইব্রেরি দিয়ে JSON থেকে Java Object এ রূপান্তর (Deserialization)

Steps for Deserialization:

  1. JSON String তৈরি করা: প্রথমে JSON ডেটা স্ট্রিং তৈরি করতে হবে বা JSON ফাইল থেকে ডেটা পড়তে হবে।
  2. JSON Parsing: JSON স্ট্রিং বা JSON ফাইলকে JSONParser ব্যবহার করে পার্স করতে হবে।
  3. Java Object তৈরি করা: JSON অবজেক্টের ডেটা Java Object-এ রূপান্তরিত হবে।

উদাহরণ: JSON থেকে Java Object এ রূপান্তর (Deserialization)

Step 1: JSON String থেকে Java Object তৈরি করা

ধরা যাক, আমাদের একটি Person ক্লাস আছে এবং একটি JSON স্ট্রিং আছে, যেটি Person অবজেক্টে রূপান্তরিত হবে।

Person ক্লাস:

public class Person {
    private String name;
    private int age;
    private String city;

    // Constructor
    public Person(String name, int age, String city) {
        this.name = name;
        this.age = age;
        this.city = city;
    }

    // Getters and Setters
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String getCity() {
        return city;
    }

    public void setCity(String city) {
        this.city = city;
    }

    @Override
    public String toString() {
        return "Person [name=" + name + ", age=" + age + ", city=" + city + "]";
    }
}

Step 2: JSON String থেকে Java Object এ রূপান্তর

এখন, JSON স্ট্রিংটিকে Person ক্লাসের একটি অবজেক্টে রূপান্তর করতে হবে।

import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
import org.json.simple.parser.ParseException;

public class JsonDeserializationExample {
    public static void main(String[] args) {
        // JSON string (simulating data received from a web service or file)
        String jsonString = "{\"name\":\"John Doe\", \"age\":30, \"city\":\"New York\"}";

        // Create a JSON parser object
        JSONParser parser = new JSONParser();

        try {
            // Parse the JSON string to a JSONObject
            JSONObject jsonObject = (JSONObject) parser.parse(jsonString);

            // Deserialize JSON to Java Object
            String name = (String) jsonObject.get("name");
            long age = (long) jsonObject.get("age"); // Age is returned as long, so we cast it to int
            String city = (String) jsonObject.get("city");

            // Create Person object from JSON data
            Person person = new Person(name, (int) age, city);

            // Print the Person object
            System.out.println(person);

        } catch (ParseException e) {
            e.printStackTrace();
        }
    }
}

ব্যাখ্যা:

  • JSONParser: JSON স্ট্রিংটি পার্স করার জন্য এটি ব্যবহার করা হয়েছে।
  • JSONObject: JSON অবজেক্টে ডেটা সংগৃহীত হয়।
  • Deserialization: JSON অবজেক্ট থেকে Java Object তৈরি করা হয় (এখানে Person অবজেক্ট)।
  • Casting: কিছু ক্ষেত্র যেমন age, long টাইপে ফেরত আসে, তাই তা int টাইপে কাস্ট করা হয়েছে।

Output:

Person [name=John Doe, age=30, city=New York]

এখানে JSON string থেকে একটি Person object তৈরি করা হয়েছে।


Step 3: JSON ফাইল থেকে Java Object তৈরি করা (Optional)

এখন, যদি JSON ডেটা ফাইলে থাকে, তাহলে সেই JSON ফাইল থেকে Java Object তৈরি করতে হবে।

import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
import java.io.FileReader;

public class JsonFileDeserializationExample {
    public static void main(String[] args) {
        // File containing JSON data
        String filePath = "person.json";

        // Create a JSON parser object
        JSONParser parser = new JSONParser();

        try {
            // Read JSON data from file and parse it
            FileReader reader = new FileReader(filePath);
            JSONObject jsonObject = (JSONObject) parser.parse(reader);

            // Deserialize JSON to Java Object
            String name = (String) jsonObject.get("name");
            long age = (long) jsonObject.get("age");
            String city = (String) jsonObject.get("city");

            // Create Person object from JSON data
            Person person = new Person(name, (int) age, city);

            // Print the Person object
            System.out.println(person);

        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

JSON File Example (person.json):

{
    "name": "Alice",
    "age": 28,
    "city": "Los Angeles"
}

Output:

Person [name=Alice, age=28, city=Los Angeles]

এখানে, আমরা JSON file থেকে ডেটা পড়েছি এবং তা Person অবজেক্টে রূপান্তর করেছি।


  • Deserialization হল JSON ডেটাকে Java Object এ রূপান্তর করার প্রক্রিয়া।
  • JSON.simple লাইব্রেরি ব্যবহার করে JSON string বা JSON file থেকে Java Object তৈরি করা যায়।
  • JSONParser ব্যবহার করে JSON ডেটা পার্স (parse) করা হয় এবং JSONObject ব্যবহার করে সেই ডেটাকে Java Object-এ রূপান্তরিত করা হয়।

এটি একটি সিম্পল উদাহরণ ছিল যা JSON.simple লাইব্রেরি ব্যবহার করে JSON থেকে Java Object রূপান্তর করার প্রক্রিয়া দেখিয়েছে।

Content added By
Promotion

Are you sure to start over?

Loading...