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

ফ্লেক্সজসনে @JSON অ্যানোটেশন দিয়ে সিরিয়ালাইজেশন কন্ট্রোল

@JSON অ্যানোটেশন JSONSerializer ক্লাস দ্বারা ব্যবহৃত হয় সিরিয়ালাইজেশন প্রক্রিয়ায় ফিল্ড ইনক্লুড বা এক্সক্লুড করতে। JSONSerializer ক্লাসের serialize() মেথড ব্যবহার করে টার্গেট ইনস্ট্যান্সের শ্যালো সিরিয়ালাইজেশন করা যায়।

সিনট্যাক্স

@Retention(value=RUNTIME)
@Target(value={FIELD,TYPE,METHOD})
public @interface JSON

উদাহরণ

import flexjson.JSONSerializer;
import flexjson.JSON;

public class JSONAnnotationTest {
    public static void main(String[] args) {
        JSONSerializer serializer = new JSONSerializer().prettyPrint(true);
        Employee emp = new Employee("Raja", "Ramesh", 30, "Hyderabad");
        String jsonStr = serializer.serialize(emp);
        System.out.println(jsonStr);
    }
}

// Employee class
class Employee {
    private String firstName, lastName, address;
    private int age;
    
    public Employee(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; }
    
    @JSON(include=false)
    public String getLastName() { return lastName; }
    
    public int getAge() { return age; }
    
    @JSON(include=false)
    public String getAddress() { return address; }
}

আউটপুট

{
  "age": 30,
  "class": "Employee",
  "firstName": "Raja"
}

ব্যবহার ক্ষেত্র

  • সেনসিটিভ ডেটা (পাসওয়ার্ড, টোকেন) JSON-এ নয়ে যাওয়ায়
  • সার্কুলার রেফারেন্স এড়াতে
  • অপ্রয়োজনীয় ফিল্ড বাদ দিয়ে পেলোড কমাতে

নোট

FlexJSON একটি পুরনো লাইব্রেরি। আধুনিক প্রজেক্টে Jackson বা Gson ব্যবহার করা বে

  1. জাভা ওপেনসিভি (OpenCV) ব্যবহার করে বৃত্ত আঁকার পদ্ধতি

  2. জাভা ওপেনসিভি (OpenCV) ব্যবহার করে আয়ত আঁকার পদ্ধতি

  3. জাভা ওপেনসিভি (OpenCV) ব্যবহার করে রেখা আঁকার পদ্ধতি

  4. জাভাতে Flexjson ব্যবহার করে JSON কে জাভা অবজেক্টে ডিসিরিয়ালাইজ করার পদ্ধতি