Key-Value Pairs গাইড ও নোট

Java Technologies - জেসন (JSON) - JSON এর গঠন (Syntax)
247

জেসন (JSON - JavaScript Object Notation) একটি লাইটওয়েট ডেটা ইন্টারচেঞ্জ ফরম্যাট যা মানুষের পঠনযোগ্য এবং মেশিনের মাধ্যমে সহজে পার্স করা যায়। এটি মূলত key-value pairs ব্যবহার করে ডেটা প্রতিনিধিত্ব করে। JSON এর key-value pairs ব্যবহারের মাধ্যমে তথ্য আদান প্রদান খুবই সহজ এবং সুবিধাজনক হয়। এটি ওয়েব অ্যাপ্লিকেশন, API, এবং ডেটাবেসের মধ্যে ডেটা আদান-প্রদান করতে ব্যাপকভাবে ব্যবহৃত হয়।

Key-Value Pairs কী?


Key-Value Pair হল দুটি উপাদান: একটি key এবং একটি valuekey একটি স্ট্রিং টাইপের, যা একটি ইউনিক আইডেন্টিফায়ার হিসেবে কাজ করে, এবং value হচ্ছে সেই key-এর সাথে সম্পর্কিত ডেটা যা যেকোনো ডেটা টাইপের হতে পারে যেমন স্ট্রিং, নাম্বার, বুলিয়ান, অ্যারে বা অন্য JSON অবজেক্ট।

JSON ফরম্যাটে ডেটা এইভাবে থাকে:

{
    "key": "value"
}

এখানে "key" একটি স্ট্রিং, এবং "value" হচ্ছে সেই key-এর মান, যা স্ট্রিং, নাম্বার, অ্যারে বা অন্যান্য JSON অবজেক্ট হতে পারে।

JSON Example: Key-Value Pair


নিচে একটি JSON ডেটা উদাহরণ দেওয়া হলো, যেখানে বিভিন্ন key-value pair রয়েছে:

{
  "name": "John Doe",
  "age": 30,
  "isEmployed": true,
  "address": {
    "street": "123 Main St",
    "city": "New York"
  },
  "phoneNumbers": ["123-456-7890", "987-654-3210"]
}

এখানে:

  • "name": "John Doe" (এটি একটি স্ট্রিং টাইপ value)
  • "age": 30 (এটি একটি নাম্বার টাইপ value)
  • "isEmployed": true (এটি একটি বুলিয়ান টাইপ value)
  • "address": একটি অন্য JSON অবজেক্ট, যা একটি নতুন key-value pair ধারণ করে।
  • "phoneNumbers": একটি অ্যারে, যা একাধিক স্ট্রিং ধারণ করে।

Java তে JSON এর Key-Value Pair প্রসেসিং


Java তে JSON ডেটা পার্স এবং প্রক্রিয়া করার জন্য সাধারণত Jackson, Gson, বা org.json লাইব্রেরি ব্যবহার করা হয়। এই লাইব্রেরিগুলি JSON ডেটা থেকে key-value pair এক্সট্রাক্ট এবং সেট করতে সাহায্য করে।

১. Jackson ব্যবহার করে JSON Key-Value Pair পড়া

Jackson লাইব্রেরি ব্যবহার করে JSON ডেটা পার্স করার উদাহরণ:

import com.fasterxml.jackson.databind.ObjectMapper;
import java.io.IOException;
import java.util.Map;

public class JSONExample {
    public static void main(String[] args) throws IOException {
        String jsonString = "{\"name\": \"John Doe\", \"age\": 30, \"isEmployed\": true}";

        // ObjectMapper এর মাধ্যমে JSON পার্স করা
        ObjectMapper objectMapper = new ObjectMapper();
        Map<String, Object> map = objectMapper.readValue(jsonString, Map.class);

        // Key-Value Pair এক্সট্রাক্ট করা
        System.out.println("Name: " + map.get("name"));
        System.out.println("Age: " + map.get("age"));
        System.out.println("Is Employed: " + map.get("isEmployed"));
    }
}

এই কোডে:

  • ObjectMapper ব্যবহার করা হয়েছে JSON স্ট্রিংকে Map-এ রূপান্তর করতে।
  • JSON স্ট্রিং থেকে key-value pair গুলো বের করা হয়েছে এবং map.get("key") ব্যবহার করে value গুলো পাওয়া গেছে।

২. Gson ব্যবহার করে JSON Key-Value Pair পড়া

Gson লাইব্রেরি ব্যবহার করে JSON ডেটা পার্স করার উদাহরণ:

import com.google.gson.Gson;
import java.util.Map;

public class GsonExample {
    public static void main(String[] args) {
        String jsonString = "{\"name\": \"John Doe\", \"age\": 30, \"isEmployed\": true}";

        // Gson ব্যবহার করে JSON স্ট্রিং পার্স করা
        Gson gson = new Gson();
        Map<String, Object> map = gson.fromJson(jsonString, Map.class);

        // Key-Value Pair এক্সট্রাক্ট করা
        System.out.println("Name: " + map.get("name"));
        System.out.println("Age: " + map.get("age"));
        System.out.println("Is Employed: " + map.get("isEmployed"));
    }
}

এই উদাহরণে:

  • Gson ব্যবহার করে JSON ডেটা Map এ রূপান্তরিত করা হয়েছে এবং key-value pair গুলো এক্সট্রাক্ট করা হয়েছে।

JSON তে Nested Key-Value Pair


JSON ডেটা প্রায়ই nested থাকে, অর্থাৎ একটি key-ভ্যালু পেয়ার অন্য একটি JSON অবজেক্টে থাকতে পারে। এর মাধ্যমে জটিল ডেটা কাঠামো সহজে তৈরি করা সম্ভব হয়।

{
  "employee": {
    "name": "John Doe",
    "position": "Developer",
    "department": {
      "name": "IT",
      "location": "New York"
    }
  }
}

এখানে:

  • "employee" key এর মান একটি nested JSON অবজেক্ট।
  • "department" key এর মানও একটি nested JSON অবজেক্ট।

Java-তে এরকম nested key-value pair পড়ার উদাহরণ:

import com.fasterxml.jackson.databind.ObjectMapper;
import java.io.IOException;
import java.util.Map;

public class NestedJSONExample {
    public static void main(String[] args) throws IOException {
        String jsonString = "{\"employee\": {\"name\": \"John Doe\", \"position\": \"Developer\", \"department\": {\"name\": \"IT\", \"location\": \"New York\"}}}";

        // JSON পার্স করা
        ObjectMapper objectMapper = new ObjectMapper();
        Map<String, Object> map = objectMapper.readValue(jsonString, Map.class);

        // Nested Key-Value Pair এক্সট্রাক্ট করা
        Map<String, Object> employee = (Map<String, Object>) map.get("employee");
        System.out.println("Employee Name: " + employee.get("name"));
        System.out.println("Position: " + employee.get("position"));
        
        // Nested Department এর Key-Value Pair
        Map<String, Object> department = (Map<String, Object>) employee.get("department");
        System.out.println("Department Name: " + department.get("name"));
        System.out.println("Location: " + department.get("location"));
    }
}

সারাংশ


Key-Value Pairs হল JSON এর মূল কাঠামো, যা ডেটা উপস্থাপন এবং এক্সচেঞ্জ করার জন্য খুবই কার্যকরী। JSON ফরম্যাটের মাধ্যমে বিভিন্ন ধরনের ডেটা যেমন স্ট্রিং, নাম্বার, অ্যারে বা অবজেক্ট সহজে সংরক্ষণ ও প্রক্রিয়া করা যায়। Java তে Jackson, Gson, বা org.json লাইব্রেরি ব্যবহার করে JSON ডেটা পার্স এবং key-value pair গুলো অ্যাক্সেস করা খুবই সহজ। JSON এ nested key-value pair এর সাহায্যে আরও জটিল ডেটা কাঠামো তৈরি করা যায়, যা আধুনিক ওয়েব অ্যাপ্লিকেশনগুলির জন্য অপরিহার্য।

Content added By
Promotion

Are you sure to start over?

Loading...