JSON Pointer এবং JSON Patch

Java Technologies - অর্গ.জেসন (Org.Json)
73
73

Org.JSON লাইব্রেরি Java তে JSON ডেটার সাথে কাজ করার জন্য শক্তিশালী এবং কার্যকরী ফিচার প্রদান করে। JSON Pointer এবং JSON Patch দুটি গুরুত্বপূর্ণ টুল যা JSON ডেটা ম্যানিপুলেশন এবং অ্যাক্সেস করতে সহায়তা করে। এই দুটি কনসেপ্ট মূলত JSON ডেটা আপডেট বা পরিবর্তন করতে ব্যবহৃত হয়। চলুন, এগুলোর প্রতি এক নজর দিই।

JSON Pointer

JSON Pointer একটি স্ট্যান্ডার্ড যা JSON ডেটাতে নির্দিষ্ট একটি অংশ বা মান অ্যাক্সেস করতে ব্যবহৃত হয়। এটি একটি স্ট্রিং হিসেবে নির্দিষ্ট পাথ (path) দেয়, যা JSON অবজেক্টের মধ্যে একটি নির্দিষ্ট স্থানে নির্দেশ করে। JSON Pointer ব্যবহার করে JSON ডেটার মধ্যে সুনির্দিষ্ট মানগুলি অ্যাক্সেস বা সংশোধন করা যায়।

JSON Pointer ব্যবহার করার উদাহরণ

ধরা যাক, আমাদের একটি JSON অবজেক্ট রয়েছে এবং আমরা JSON Pointer ব্যবহার করে তার ভিতরে একটি নির্দিষ্ট মান অ্যাক্সেস করতে চাই।

JSON ডেটা (example.json)
{
    "name": "John Doe",
    "age": 30,
    "address": {
        "street": "123 Main St",
        "city": "Springfield"
    }
}
Java কোড: JSON Pointer ব্যবহার করা
import org.json.JSONObject;
import org.json.JSONPointer;

public class JSONPointerExample {
    public static void main(String[] args) {
        // JSON অবজেক্ট তৈরি
        JSONObject jsonObject = new JSONObject();
        jsonObject.put("name", "John Doe");
        jsonObject.put("age", 30);
        JSONObject address = new JSONObject();
        address.put("street", "123 Main St");
        address.put("city", "Springfield");
        jsonObject.put("address", address);

        // JSON Pointer তৈরি
        JSONPointer pointer = new JSONPointer("/address/city");

        // JSON Pointer ব্যবহার করে নির্দিষ্ট মান অ্যাক্সেস করা
        Object city = pointer.queryFrom(jsonObject);

        // ফলাফল প্রিন্ট করা
        System.out.println("City: " + city);  // Output: Springfield
    }
}

কোডের ব্যাখ্যা

  • JSONPointer: JSONPointer একটি পাথ নির্দেশক হিসাবে কাজ করে, যেমন /address/city যেখানে / হল রুট থেকে একটি পাথ নির্দেশ, এবং address/city হল নির্দিষ্ট কনটেন্টের পাথ।
  • queryFrom(): queryFrom() মেথডটি JSONPointer দ্বারা নির্দিষ্ট পাথের মান বের করতে ব্যবহৃত হয়।

JSON Patch

JSON Patch হল একটি স্ট্যান্ডার্ড যা JSON ডেটার মধ্যে পরিবর্তন বা আপডেট করার জন্য ব্যবহৃত হয়। এটি একটি JSON ডকুমেন্টে ছোট ছোট পরিবর্তন বা প্যাচ (patch) প্রয়োগ করতে সাহায্য করে, যেমন নতুন মান যোগ করা, বিদ্যমান মান পরিবর্তন করা বা মান মুছে ফেলা। JSON Patch সাধারণত অ্যাপ্লিকেশনগুলিতে ব্যবহার করা হয় যেখানে JSON ডেটার পরিবর্তন বা আপডেট দরকার হয়।

JSON Patch ব্যবহার করার উদাহরণ

ধরা যাক, আমাদের একটি JSON অবজেক্ট রয়েছে এবং আমরা JSON Patch ব্যবহার করে কিছু পরিবর্তন করতে চাই।

JSON ডেটা (example.json)
{
    "name": "John Doe",
    "age": 30,
    "address": {
        "street": "123 Main St",
        "city": "Springfield"
    }
}
JSON Patch (patch.json)
[
    { "op": "replace", "path": "/age", "value": 31 },
    { "op": "add", "path": "/phone", "value": "123-456-7890" }
]
Java কোড: JSON Patch ব্যবহার করা
import org.json.JSONObject;
import org.json.JSONPatch;
import org.json.JSONPointer;
import org.json.JSONArray;

public class JSONPatchExample {
    public static void main(String[] args) {
        // মূল JSON অবজেক্ট তৈরি
        JSONObject jsonObject = new JSONObject();
        jsonObject.put("name", "John Doe");
        jsonObject.put("age", 30);
        JSONObject address = new JSONObject();
        address.put("street", "123 Main St");
        address.put("city", "Springfield");
        jsonObject.put("address", address);

        // JSON Patch তৈরি
        String patchString = "[ { \"op\": \"replace\", \"path\": \"/age\", \"value\": 31 }, { \"op\": \"add\", \"path\": \"/phone\", \"value\": \"123-456-7890\" } ]";
        JSONArray patchArray = new JSONArray(patchString);

        // JSON Patch প্রয়োগ করা
        JSONPatch patch = new JSONPatch(patchArray);
        JSONObject patchedJson = patch.apply(jsonObject);

        // পরিবর্তিত JSON অবজেক্ট প্রিন্ট করা
        System.out.println(patchedJson.toString(4)); // Pretty print
    }
}

কোডের ব্যাখ্যা

  • JSONPatch: JSONPatch একটি প্যাচ অপারেশন যা JSON অবজেক্টের উপর প্রয়োগ করা হয়। এটি একটি অ্যারে হিসেবে প্যাচ অপারেশন গ্রহণ করে (যেমন replace, add, remove) এবং নির্দিষ্ট পাথ অনুযায়ী JSON ডেটা পরিবর্তন করে।
  • op (operation): op হল JSON Patch অপারেশন টাইপ। এটি হতে পারে add, remove, replace, বা move
  • path: path হল সেই পাথ যেখানে পরিবর্তন প্রয়োগ হবে।
  • value: value হল নতুন মান, যা সংশ্লিষ্ট পাথের জন্য সেট করা হবে।

JSON Pointer এবং JSON Patch এর মধ্যে পার্থক্য

  • JSON Pointer: এটি JSON ডেটার একটি নির্দিষ্ট স্থানে অ্যাক্সেস করার জন্য ব্যবহৃত হয়, যেমন একটি ফিল্ড বা মান।
  • JSON Patch: এটি JSON ডেটাতে পরিবর্তন বা আপডেট করার জন্য ব্যবহৃত হয়, যেমন মান পরিবর্তন, নতুন মান যোগ করা, বা বিদ্যমান মান মুছে ফেলা।

JSON Pointer এবং JSON Patch এর ব্যবহার

  • JSON Pointer: সাধারণত JSON ডেটার মধ্যে কোন নির্দিষ্ট মান বা ফিল্ড অ্যাক্সেস করার জন্য ব্যবহৃত হয়।
  • JSON Patch: JSON ডেটাতে পরিবর্তন করার জন্য ব্যবহৃত হয়, যেমন কোনো ফিল্ড আপডেট বা নতুন ফিল্ড যোগ করা। এটি মূলত ডেটার ইভোলিউশন বা আপডেটের জন্য ব্যবহৃত হয়।

Org.JSON লাইব্রেরি Java তে JSON Pointer এবং JSON Patch ব্যবহারের মাধ্যমে JSON ডেটা অ্যাক্সেস এবং আপডেট করার প্রক্রিয়াকে সহজ এবং দ্রুত করে তোলে। JSON Pointer ডেটা রিড করার জন্য এবং JSON Patch ডেটাতে পরিবর্তন করার জন্য অত্যন্ত কার্যকরী টুল হিসেবে কাজ করে।

Content added By

JSON Pointer কি এবং এর ব্যবহার

61
61

JSON Pointer একটি স্ট্যান্ডার্ড যা JSON ডেটা স্ট্রাকচারের মধ্যে একটি নির্দিষ্ট অংশ বা উপাদান শনাক্ত করতে ব্যবহৃত হয়। এটি একটি স্ট্রিং (String) যে স্ট্রিংটি JSON ডেটার মধ্যে একটি নির্দিষ্ট উপাদান বা মানের অবস্থান নির্দেশ করে। JSON Pointer প্রাথমিকভাবে JSON ডেটাতে নির্দিষ্ট উপাদান অনুসন্ধান করতে সাহায্য করে, যেমন JSON অবজেক্টের কীগুলোর মান অথবা অ্যারের নির্দিষ্ট আইটেম।

Org.JSON লাইব্রেরি JSONPointer এর জন্য একটি সমর্থন প্রদান করে যা আপনাকে JSON ডেটা স্ট্রাকচারের মধ্যে নির্দিষ্ট মান বা উপাদান অ্যাক্সেস করতে সক্ষম করে।

JSON Pointer এর গঠন

JSON Pointer স্ট্রিংটির গঠন এমনভাবে হয় যে এটি JSON ডেটার মধ্যে একটি নির্দিষ্ট পাথ নির্দেশ করে। এটি / দ্বারা পৃথক হওয়া অংশগুলো দিয়ে গঠিত হয়। উদাহরণস্বরূপ:

  • /name: এখানে এটি JSON অবজেক্টের name কীর মান নির্দেশ করছে।
  • /address/city: এখানে এটি নেস্টেড অবজেক্টের address কীর ভেতরে city কীর মান নির্দেশ করছে।

JSON Pointer এর ব্যবহার

Org.JSON লাইব্রেরি JSON Pointer এর মাধ্যমে JSON ডেটা স্ট্রাকচারের ভেতরে নির্দিষ্ট অংশ বা উপাদান খুঁজে বের করার সুবিধা দেয়। এটি সাধারণত JSON ডেটা এক্সট্র্যাক্ট করার জন্য ব্যবহার করা হয়।

উদাহরণ: JSON Pointer ব্যবহার করে ডেটা এক্সট্র্যাক্ট করা

ধরা যাক, আমাদের কাছে একটি JSON অবজেক্ট আছে এবং আমরা JSON Pointer ব্যবহার করে এর নির্দিষ্ট অংশ এক্সট্র্যাক্ট করতে চাই।

import org.json.JSONObject;
import org.json.JSONPointer;

public class JsonPointerExample {
    public static void main(String[] args) {
        // JSON অবজেক্ট তৈরি
        String jsonString = "{ \"name\": \"John\", \"address\": { \"city\": \"New York\", \"zip\": \"10001\" } }";
        JSONObject jsonObject = new JSONObject(jsonString);

        // JSON Pointer তৈরি
        JSONPointer pointer = new JSONPointer("/address/city");

        // JSON Pointer দিয়ে ডেটা এক্সট্র্যাক্ট করা
        String city = (String) pointer.queryFrom(jsonObject);

        // আউটপুট
        System.out.println("City: " + city);
    }
}

কোড ব্যাখ্যা

  1. JSON অবজেক্ট তৈরি: JSON ডেটা স্ট্রিং থেকে একটি JSONObject অবজেক্ট তৈরি করা হয়েছে।
  2. JSON Pointer: /address/city JSON Pointer ব্যবহার করে আমরা JSON ডেটার মধ্যে address অবজেক্টের ভিতরে city কীর মান অ্যাক্সেস করতে চেয়েছি।
  3. queryFrom() মেথড: এই মেথডের মাধ্যমে JSON Pointer ব্যবহার করে নির্দিষ্ট পাথ থেকে ডেটা এক্সট্র্যাক্ট করা হয়েছে।

এটি আউটপুট হিসেবে নিম্নলিখিত ফলাফল দিবে:

City: New York

JSON Pointer এর অন্যান্য ব্যবহার

  1. অবজেক্টের কীগুলোর মান অ্যাক্সেস: JSON Pointer এর মাধ্যমে আপনি সহজে JSON অবজেক্টের নির্দিষ্ট কীগুলোর মান অ্যাক্সেস করতে পারবেন। যেমন /name দিয়ে name কীর মান পাওয়া যাবে।
  2. নেস্টেড অবজেক্টের ভেতরে ডেটা খোঁজা: যদি JSON ডেটাতে নেস্টেড অবজেক্ট থাকে, তখন JSON Pointer ব্যবহার করে আপনি ভিতরের মানও এক্সট্র্যাক্ট করতে পারবেন। যেমন /address/city দিয়ে address অবজেক্টের ভেতরের city মান পাওয়া যাবে।
  3. অ্যারের নির্দিষ্ট আইটেম অ্যাক্সেস করা: JSON অ্যারে থেকেও নির্দিষ্ট আইটেম এক্সট্র্যাক্ট করা যায়। যেমন /employees/0/name দিয়ে employees অ্যারের প্রথম উপাদান থেকে name এক্সট্র্যাক্ট করা যাবে।

JSON Pointer এর সীমাবদ্ধতা

  • স্ট্রিং ভিত্তিক পাথ: JSON Pointer স্ট্রিং ভিত্তিক, যার কারণে এটি কিছু ক্ষেত্রে বেশি জটিল এবং পারফরম্যান্স ইস্যু সৃষ্টি করতে পারে যখন JSON স্ট্রাকচার বিশাল বা গভীর হয়।
  • নেস্টেড JSON অবজেক্ট: যদি JSON অবজেক্ট অনেক গভীর হয়, তখন JSON Pointer ব্যবহার করে এটি এক্সট্র্যাক্ট করা কিছুটা কঠিন হতে পারে।

সারাংশ

JSON Pointer একটি শক্তিশালী টুল যা JSON ডেটা স্ট্রাকচারের মধ্যে নির্দিষ্ট উপাদান বা মানকে দ্রুত এবং কার্যকরভাবে অ্যাক্সেস করতে সাহায্য করে। Org.JSON লাইব্রেরির মাধ্যমে Java প্রোগ্রামে JSON Pointer ব্যবহার করা সম্ভব। এটি JSON ডেটা পার্সিং এবং এক্সট্র্যাকশনের একটি সহজ ও সুবিধাজনক উপায় প্রদান করে, বিশেষত যখন JSON ডেটা গভীরভাবে নেস্টেড থাকে।

Content added By

JSON Patch এর মাধ্যমে ডেটা ম্যানিপুলেশন

46
46

অর্গ.জেসন (Org.Json) লাইব্রেরি Java-তে JSON ডেটা ম্যানিপুলেশন এবং পরিবর্তন করার জন্য একটি শক্তিশালী টুল। JSON Patch একটি স্ট্যান্ডার্ড (RFC 6902) যা JSON ডেটাতে পার্টিয়াল পরিবর্তন (partial modification) করতে সাহায্য করে, অর্থাৎ আপনি JSON ডকুমেন্টের একটি নির্দিষ্ট অংশ পরিবর্তন, যুক্ত, বা মুছে ফেলতে পারেন।

JSON Patch ব্যবহার করে আপনি JSON ডেটার বিভিন্ন অংশে দ্রুত এবং কার্যকরীভাবে পরিবর্তন করতে পারেন। এটি একাধিক অপারেশন একসঙ্গে করতে সক্ষম, যেমন add, remove, replace, এবং move

JSON Patch এর অপারেশন

  1. add: একটি নতুন মান বা কী যোগ করে।
  2. remove: একটি নির্দিষ্ট কী বা মান মুছে ফেলে।
  3. replace: একটি পুরানো মানের পরিবর্তে নতুন মান প্রদান করে।
  4. move: একটি কী বা মানকে একটি জায়গা থেকে অন্য জায়গায় স্থানান্তরিত করে।
  5. copy: একটি কী বা মানের কপি তৈরি করে।
  6. test: একটি কী বা মানের অস্তিত্ব পরীক্ষা করে।

JSON Patch উদাহরণ

ধরা যাক, আমাদের কাছে একটি JSON অবজেক্ট রয়েছে এবং আমরা সেটির কিছু অংশে পরিবর্তন করতে চাই। JSON Patch এর সাহায্যে আমরা এই পরিবর্তনগুলি সম্পাদন করতে পারব।

উদাহরণ: JSON Patch এর মাধ্যমে ডেটা ম্যানিপুলেশন

import org.json.JSONArray;
import org.json.JSONObject;
import org.json.JSONPointer;
import org.json.JSONTokener;
import org.json.patch.Operation;
import org.json.patch.Patch;

import java.util.Arrays;

public class JsonPatchExample {
    public static void main(String[] args) {
        // JSON ডকুমেন্ট তৈরি করা
        JSONObject originalJson = new JSONObject();
        originalJson.put("name", "John Doe");
        originalJson.put("age", 30);
        originalJson.put("city", "New York");
        JSONArray phoneNumbers = new JSONArray();
        phoneNumbers.put("123-456-7890");
        phoneNumbers.put("987-654-3210");
        originalJson.put("phoneNumbers", phoneNumbers);

        // JSON Patch তৈরি করা (add, replace, remove)
        JSONArray patchOperations = new JSONArray();

        // 'age' নামের কী এর মান পরিবর্তন করা
        JSONObject replaceOperation = new JSONObject();
        replaceOperation.put("op", "replace");
        replaceOperation.put("path", "/age");
        replaceOperation.put("value", 35);
        patchOperations.put(replaceOperation);

        // 'city' নামের কী মুছে ফেলা
        JSONObject removeOperation = new JSONObject();
        removeOperation.put("op", "remove");
        removeOperation.put("path", "/city");
        patchOperations.put(removeOperation);

        // 'phoneNumbers' অ্যারেতে একটি নতুন ফোন নম্বর যোগ করা
        JSONObject addOperation = new JSONObject();
        addOperation.put("op", "add");
        addOperation.put("path", "/phoneNumbers/1");
        addOperation.put("value", "555-555-5555");
        patchOperations.put(addOperation);

        // JSON Patch তৈরি করা
        Patch patch = Patch.fromJson(patchOperations);

        // JSON ডকুমেন্টে প্যাচ প্রয়োগ করা
        JSONObject modifiedJson = patch.apply(originalJson);

        // পরিবর্তিত JSON ডকুমেন্ট প্রদর্শন করা
        System.out.println("Modified JSON:");
        System.out.println(modifiedJson.toString(4)); // Pretty print JSON with indentation
    }
}

কোড ব্যাখ্যা

  • originalJson.put(): এখানে একটি JSON অবজেক্ট তৈরি করা হয়েছে যার মধ্যে name, age, city, এবং phoneNumbers অন্তর্ভুক্ত রয়েছে।
  • JSONArray patchOperations: এটি একটি অ্যারে যেখানে আমরা JSON Patch অপারেশনগুলি (যেমন add, replace, remove) রাখব।
  • replaceOperation, removeOperation, addOperation: এগুলি JSON Patch অপারেশন, যেখানে নির্দিষ্ট পাথে মান পরিবর্তন, মুছে ফেলা, অথবা যোগ করার জন্য op, path, এবং value নির্ধারণ করা হয়েছে।
  • Patch.fromJson(): এটি JSON Patch তৈরি করে এবং প্যাচ অপারেশনগুলিকে JSON অবজেক্টের ওপর প্রয়োগ করার জন্য প্রস্তুত করে।
  • patch.apply(originalJson): এটি JSON Patch অ্যাপ্লাই করে এবং মূল JSON ডেটার উপর পরিবর্তন করে একটি নতুন JSON অবজেক্ট রিটার্ন করে।

JSON Patch অপারেশনগুলোর ব্যাখ্যা

  1. replace: replace অপারেশনটি একটি নির্দিষ্ট কী এর মান পরিবর্তন করে। এখানে আমরা age এর মান 30 থেকে 35 করেছি।
  2. remove: remove অপারেশনটি একটি নির্দিষ্ট কী মুছে ফেলে। এখানে আমরা city কী মুছে ফেলেছি।
  3. add: add অপারেশনটি একটি নতুন মান বা কী যোগ করে। এখানে আমরা phoneNumbers অ্যারেতে নতুন ফোন নম্বর 555-555-5555 যোগ করেছি।

JSON Patch থেকে JSON ডেটা প্যার্স করা

JSON Patch ডেটার মাধ্যমে আপনি একটি JSON অবজেক্টের নির্দিষ্ট অংশে পরিবর্তন করতে পারেন। এটি ডেটা স্ট্রাকচারের মধ্যে ছোট-বড় পরিবর্তন আনার জন্য বিশেষভাবে উপযোগী, যেমন বড় JSON ডকুমেন্টের মধ্যে ডেটা আপডেট করা।


সারাংশ

JSON Patch ব্যবহার করে আপনি JSON ডেটাতে পার্টিয়াল পরিবর্তন করতে পারেন, যেমন নতুন মান যোগ করা, পুরানো মান পরিবর্তন করা, এবং কী মুছে ফেলা। এটি একটি শক্তিশালী পদ্ধতি JSON ডেটার ডাইনামিক ম্যানিপুলেশন করার জন্য, বিশেষত যখন ডেটা বড় বা জটিল হয় এবং তার কিছু অংশ পরিবর্তন প্রয়োজন হয়। JSON Patch অপারেশনগুলি যেমন add, remove, replace, এবং move ব্যবহৃত হয় JSON ডেটার নির্দিষ্ট অংশে পরিবর্তন আনার জন্য, এবং এটি অ্যাপ্লিকেশন বা API ডেভেলপমেন্টে খুবই কার্যকরী হতে পারে।

Content added By

উদাহরণ সহ JSON Pointer এবং JSON Patch

101
101

JSON Pointer এবং JSON Patch হল দুটি জনপ্রিয় প্রযুক্তি যা JSON ডেটা স্ট্রাকচারের মধ্যে নির্দিষ্ট ডেটা এক্সেস এবং আপডেট করার জন্য ব্যবহৃত হয়। org.json লাইব্রেরির মধ্যে এই দুটি ফিচার উপলব্ধ রয়েছে যা JSON ডেটা ম্যানিপুলেশনকে আরও সহজ ও কার্যকরী করে।

১. JSON Pointer

JSON Pointer একটি স্ট্রিং প্রপার্টি যা JSON ডেটার মধ্যে নির্দিষ্ট পাথ বা কীগুলোর মাধ্যমে ডেটা এক্সেস করার জন্য ব্যবহৃত হয়। এটি মূলত একটি পাথ স্ট্রিং, যা JSON ডেটার মধ্যে এক বা একাধিক স্তরের মধ্যে থাকা মানে নির্দেশনা দেয়।

JSON Pointer স্ট্রিং সাধারণত / দ্বারা পৃথক করা হয় এবং প্রতিটি অংশ একটি কী বা ইনডেক্স নির্দেশ করে। উদাহরণস্বরূপ, /a/b/c JSON ডেটার মধ্যে a কী, তার মধ্যে b কী, এবং তারপর c কী এর মানে নির্দেশ করবে।

JSON Pointer উদাহরণ:

import org.json.JSONObject;
import org.json.JSONPointer;

public class JSONPointerExample {
    public static void main(String[] args) {
        // একটি JSON অবজেক্ট তৈরি
        JSONObject obj = new JSONObject();
        obj.put("name", "John");
        obj.put("age", 30);
        
        // JSON Pointer দিয়ে নির্দিষ্ট মান এক্সেস করা
        JSONPointer pointer = new JSONPointer("/name");
        String name = (String) pointer.queryFrom(obj);
        
        // পয়েন্টারের মাধ্যমে পাওয়া মান প্রিন্ট করা
        System.out.println("Name: " + name);
    }
}

আউটপুট:

Name: John

এখানে, JSON Pointer /name ব্যবহার করে name কীর মান John এক্সেস করা হয়েছে।

২. JSON Patch

JSON Patch হল একটি স্ট্যান্ডার্ড যা JSON ডেটার পরিবর্তন, আপডেট, মুছে ফেলা বা যোগ করার জন্য ব্যবহৃত হয়। এটি JSON ডেটাতে নির্দিষ্ট পরিবর্তনগুলো করতে একটি প্যাচ ফাইল বা পদ্ধতি ব্যবহার করে।

JSON Patch ফরম্যাট একটি অ্যারের মতো থাকে, যেখানে প্রতিটি অপারেশন একটি অবজেক্ট হিসেবে থাকে যা অপারেশন, পাথ এবং মান নির্ধারণ করে। যেমন add, replace, remove, move, ইত্যাদি অপারেশন গুলি JSON ডেটাতে পরিবর্তন করতে ব্যবহৃত হয়।

JSON Patch উদাহরণ:

import org.json.JSONObject;
import org.json.JSONPatch;

public class JSONPatchExample {
    public static void main(String[] args) {
        // একটি JSON অবজেক্ট তৈরি
        JSONObject obj = new JSONObject();
        obj.put("name", "John");
        obj.put("age", 30);

        // JSON Patch তৈরি
        JSONPatch patch = new JSONPatch();
        
        // Patch এর মাধ্যমে age ফিল্ড আপডেট করা
        patch.add("/age", 35);  // 35 দিয়ে বয়স আপডেট করা
        patch.remove("/name");  // name কীর মান মুছে ফেলা

        // Patch প্রয়োগ করা
        patch.apply(obj);
        
        // আপডেট হওয়া JSON অবজেক্ট প্রিন্ট করা
        System.out.println(obj.toString());
    }
}

আউটপুট:

{
    "age": 35
}

এখানে, JSON Patch ব্যবহার করে name কীর মান মুছে ফেলা হয়েছে এবং age কীর মান 30 থেকে 35 করা হয়েছে।

JSON Patch অপারেশন

JSON Patch ফরম্যাটের বিভিন্ন অপারেশনগুলি নিচে ব্যাখ্যা করা হলো:

  • add: নির্দিষ্ট পাথের উপর একটি নতুন মান যুক্ত করে।
  • remove: নির্দিষ্ট পাথের উপর মান মুছে ফেলে।
  • replace: নির্দিষ্ট পাথের উপর মান প্রতিস্থাপন করে।
  • move: একটি পাথ থেকে মান অন্য পাথে সরিয়ে নেয়।
  • copy: একটি পাথ থেকে মান অন্য পাথে কপি করে।
  • test: একটি পাথের মান পরীক্ষণ করে, যদি এটি নির্দিষ্ট মানের সাথে মেলে তবে ত্রুটি না দিয়ে চালিয়ে যায়।

উদাহরণ: JSON Patch এর আরো অপারেশন

import org.json.JSONObject;
import org.json.JSONPatch;

public class JSONPatchOperationsExample {
    public static void main(String[] args) {
        // একটি JSON অবজেক্ট তৈরি
        JSONObject obj = new JSONObject();
        obj.put("name", "John");
        obj.put("age", 30);

        // JSON Patch তৈরি
        JSONPatch patch = new JSONPatch();
        
        // JSON Patch এর অপারেশন যোগ করা
        patch.add("/address", "123 Street, NY");   // নতুন address যোগ করা
        patch.replace("/age", 31);                 // age আপডেট করা
        patch.remove("/name");                     // name মুছে ফেলা

        // Patch প্রয়োগ করা
        patch.apply(obj);
        
        // আপডেট হওয়া JSON অবজেক্ট প্রিন্ট করা
        System.out.println(obj.toString());
    }
}

আউটপুট:

{
    "age": 31,
    "address": "123 Street, NY"
}

এখানে name মুছে ফেলা হয়েছে, age পরিবর্তিত হয়েছে, এবং একটি নতুন address কীর মান যোগ করা হয়েছে।


সারাংশ

  • JSON Pointer হল একটি স্ট্রিং পাথ যা JSON ডেটার মধ্যে একটি নির্দিষ্ট মানের এক্সেস পেতে ব্যবহার করা হয়।
  • JSON Patch হল একটি স্ট্যান্ডার্ড পদ্ধতি যা JSON ডেটাতে নির্দিষ্ট পরিবর্তন যেমন যোগ, প্রতিস্থাপন, মুছে ফেলা ইত্যাদি করতে ব্যবহৃত হয়।

org.json লাইব্রেরিতে এই দুটি ফিচার ব্যবহার করে JSON ডেটার মধ্যে দ্রুত এবং কার্যকরীভাবে পরিবর্তন এবং এক্সেস করা সম্ভব।

Content added By
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion