কম্পিউটার

জাভাতে Gson এর সাথে কাস্টম JSON ডি-সিরিয়ালাইজেশন কীভাবে বাস্তবায়ন করবেন?


A Gson ৷ লাইব্রেরি GsonBuilder -এর সাথে একটি কাস্টম ডি-সিরিয়ালাইজার নিবন্ধন করে কাস্টম ডি-সিরিয়ালাইজার নির্দিষ্ট করার একটি উপায় প্রদান করে যদি আমাদের একটি java অবজেক্টকে JSON এ রূপান্তরিত করার উপায়ের প্রয়োজন হয় . আমরা deserialize() ওভাররাইড করে একটি কাস্টম ডি-সিরিয়ালাইজার তৈরি করতে পারি com.google.gson.JsonDeserialize এর পদ্ধতি আর ক্লাস।

নীচের উদাহরণে, কাস্টম ডি-সিরিয়ালাইজেশন বাস্তবায়ন JSON-এর।

উদাহরণ

import java.lang.reflect.Type;
import com.google.gson.*;
public class CustomJSONDeSerializerTest {
   public static void main(String[] args) {
      Gson gson = new GsonBuilder().registerTypeAdapter(Password.class, new          PasswordDeserializer()).setPrettyPrinting().create();
      String jsonStr = "{" +
                          "\"firstName\": \"Adithya\"," +
                          "\"lastName\": \"Sai\"," +
                          "\"age\": 25," +
                          "\"address\": \"Pune\"," +
                          "\"password\": \"admin@123\"" +
                       "}";
      Student student = gson.fromJson(jsonStr, Student.class);
      System.out.println(student.getPassword().getPassword());
   }
}
class PasswordDeserializer implements JsonDeserializer {
   @Override
   public Password deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context)      throws JsonParseException {
      String ecryptedPwd = json.getAsString();
      return new Password(new StringBuffer(ecryptedPwd).toString());
   }
}
// Student class
class Student {
   private String firstName;
   private String lastName;
   private int age;
   private String address;
   private Password password;
   public Student(String firstName, String lastName, int age, String address) {
      super();
      this.firstName = firstName;
      this.lastName = lastName;
      this.age = age;
      this.address = address;
   }
   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 Password getPassword() {
      return password;
   }
   public void setPassword(Password password) {
      this.password = password;
   }
   public String toString() {
      return "Student[ " +
                "firstName = " + firstName +
                ", lastName = " + lastName +
                ", age = " + age +
                ", address = " + address +
            " ]";
   }
}
// Password class
class Password {
   private String password;
   public Password(String password) {
      super();
      this.password = password;
   }
   public String getPassword() {
      return password;
   }
   public void setPassword(String password) {
      this.password = password;
   }
}

আউটপুট

admin@123

  1. জাভাতে Gson লাইব্রেরি ব্যবহার করে ফাইলে একটি JSON স্ট্রিং কীভাবে লিখবেন?

  2. কিভাবে আমরা জাভাতে একটি JToggleButton বাস্তবায়ন করতে পারি?

  3. কিভাবে জাভা মানচিত্রকে JSON এ রূপান্তর করবেন

  4. কিভাবে জাভাতে JSON পার্স করবেন