কম্পিউটার টিউটোরিয়াল

JSON-lib API দিয়ে JSON অবজেক্ট থেকে বিনে কনভার্ট করা

JSONObject ক্লাস হল নেম/ভ্যালু পেয়ারের অনর্ডার্ড কলেকশন, যেখানে বিন হল সেটার/গেটার মেথড বিশিষ্ট ক্লাস। JSONObject ক্লাসের toBean() মেথড ব্যবহার করে JSON অবজেক্ট থেকে বিনে কনভার্ট করা যায়।

সিনট্যাক্স

public static Object toBean(JSONObject jsonObject, Class beanClass)

উদাহরণ

import net.sf.json.JSONObject;

public class ConvertJSONObjToBeanTest {
    public static void main(String[] args) {
        Employee emp = new Employee("Sai", "Ram", 30, "Bangalore");
        JSONObject jsonObj = JSONObject.fromObject(emp);
        System.out.println(jsonObj.toString(3)); // প্রিটি প্রিন্ট JSON
        
        emp = (Employee)JSONObject.toBean(jsonObj, Employee.class);
        System.out.println(emp.toString());
    }
    
    // Employee class
    public static class Employee {
        private String firstName, lastName, address;
        private int age;
        
        public Employee() {}
        public Employee(String firstName, String lastName, int age, String address) {
            super();
            this.firstName = firstName;
            this.lastName = lastName;
            this.age = age;
            this.address = address;
        }
        
        // getter/setter...
        public String getFirstName() { return firstName; }
        public void setFirstName(String firstName) { this.firstName = firstName; }
        public String getLastName() { return lastName; }
        public void setLastName(String lastName) { this.lastName = lastName; }
        public int getAge() { return age; }
        public void setAge(int age) { this.age = age; }
        public String getAddress() { return address; }
        public void setAddress(String address) { this.address = address; }
        
        public String toString() {
            return "Employee[ firstName = " + firstName + 
                   ", lastName = " + lastName + 
                   ", age = " + age + 
                   ", address = " + address + " ]";
        }
    }
}

আউটপুট

{
  "firstName": "Sai",
  "lastName": "Ram",
  "address": "Bangalore",
  "age": 30
}
Employee[ firstName = Sai, lastName = Ram, age = 30, address = Bangalore ]

নোট

  • JSON-lib পুরনো লাইব্রেরি, আধুনিক প্রজেক্টে Jackson/Gson ব্যবহার করুন
  • Jackson-এ: objectMapper.readValue(jsonObj.toString(), Employee.class)
  • Gson-এ: gson.fromJson(jsonObj.toString(), Employee.class)
  • বিন ক্লাসে ডিফল্ট কনস্ট্রাক্টর এবং সেটার থাকতে হবে
  1. জাভাতে json-simple লাইব্রেরি ব্যবহার করে JSON স্ট্রিং কে জাভা অবজেক্টে রূপান্তর করুন

  2. জাভাতে ম্যাপ কে JSON অবজেক্টে রূপান্তর করুন

  3. জাভাতে JSON স্ট্রিং কে JSON অবজেক্টে রূপান্তর করুন

  4. জাভা POJO কে JSON-এ কনভার্ট করা: Jackson এবং Gson ব্যবহার করে