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

JSON-lib API দিয়ে টাইপ হিন্ট ছাড়া বিন থেকে XML কনভার্ট

JSON-lib জাভা বিন, ম্যাপ, অ্যারে, কালেকশন সিরিয়ালাইজ/ডিসিরিয়ালাইজ করার জাভা লাইব্রেরি। XMLSerializer ক্লাসের setTypeHintsEnabled() মেথড ব্যবহার করে বিনকে টাইপ হিন্ট ছাড়া XML-এ কনভার্ট করা যায়। এই মেথড সেট করে JSON টাইপ অ্যাট্রিবিউট হিসেবে ইনক্লুড হবে কিনা। false পাস করলে XML-এ টাইপ হিন্ট ডিসএবল হয়।

সিনট্যাক্স

public void setTypeHintsEnabled(boolean typeHintsEnabled)

উদাহরণ

import net.sf.json.JSONObject;
import net.sf.json.xml.XMLSerializer;

public class ConvertBeanToXMLNoHintsTest {
    public static void main(String[] args) {
        Employee emp = new Employee("Krishna Vamsi", 115, 30, "Java");
        JSONObject jsonObj = JSONObject.fromObject(emp);
        System.out.println(jsonObj.toString(3)); // প্রিটি প্রিন্ট JSON
        
        XMLSerializer xmlSerializer = new XMLSerializer();
        xmlSerializer.setTypeHintsEnabled(false); // টাইপ হিন্ট ডিসএবল
        String xml = xmlSerializer.write(jsonObj);
        System.out.println(xml);
    }
    
    public static class Employee {
        private String empName, empSkill;
        private int empId, age;
        
        public Employee(String empName, int empId, int age, String empSkill) {
            super();
            this.empName = empName;
            this.empId = empId;
            this.age = age;
            this.empSkill = empSkill;
        }
        
        public String getEmployeeName() { return empName; }
        public int getEmployeeId() { return empId; }
        public String getEmployeeSkill() { return empSkill; }
        public int getAge() { return age; }
    }
}

আউটপুট

{
  "employeeName": "Krishna Vamsi",
  "employeeSkill": "Java",
  "employeeId": 115,
  "age": 30
}


  30
  115
  Krishna Vamsi
  Java

টাইপ হিন্ট সহ XML (ডিফল্ট)



  30
  115
  Krishna Vamsi
  Java

নোট

  • JSON-lib পুরনো, আধুনিক প্রজেক্টে Jackson XML মডিউল (jackson-dataformat-xml) ব্যবহার করুন
  • Jackson-এ: XmlMapper xmlMapper = new XmlMapper(); xmlMapper.writeValueAsString(emp);
  • টাইপ হিন্ট ডিসএবল: xmlMapper.disable(SerializationFeature.WRITE_ROOT_VALUE); বা কাস্টম সিরিয়ালাইজার
  1. জ্যাকসন লাইব্রেরি ব্যবহার করে জাভা অবজেক্টকে JSON-এ রূপান্তর করা

  2. GSON লাইব্রেরি ব্যবহার করে জাভা অবজেক্টকে JSON-এ কনভার্ট করার পদ্ধতি

  3. জাভাতে XML কে JSON অ্যারে-এ রূপান্তর করা

  4. জাভাতে CLOB টাইপকে String-এ কনভার্ট কীভাবে করবেন?