অ্যান্ড্রয়েডে জিএসন ব্যবহার করে @ সিরিয়ালাইজড এনোটোটেশনের মূল উদ্দেশ্য কী


110

@SerializedNameজিসন ব্যবহার করে অ্যান্ড্রয়েডে টীকা দেওয়ার মূল উদ্দেশ্য কী ?

আমাকে কিছু ভিন্ন উদাহরণ দিন। আমি এটি ব্যবহারের মূল উদ্দেশ্য বুঝতে পারি না।


জাভাডোক কি বলে?
সোটিরিওস ডেলিমানলিস

আমি কি বলতে পারি বুঝতে পারি না?
মুহাম্মদ আলী

এটি যে সম্পত্তি সম্পত্তি পরিচয়দাতাকে চিহ্নিত করবে যার কাছে এই সম্পত্তিটি
জসন

1
আপনি এই দুর্দান্ত ব্যাখ্যাটি দেখতে পাচ্ছেন ভবিষ্যতের স্টুড.আইও
অভিষেক কুমার

উত্তর:


254

জাভা শ্রেণীর উদাহরণ,

public class Person {

    @SerializedName("name")
    private String personName;

    @SerializedName("bd")
    private String birthDate;

}

এই শ্রেণীর দুটি ক্ষেত্র রয়েছে যা কোনও ব্যক্তির নাম এবং জন্মের তারিখ উপস্থাপন করে। এই ক্ষেত্রগুলি @ সিরিয়ালাইজড এনমেটেশন দিয়ে টিকা দেওয়া হয়। এই টীকাটির প্যারামিটার (মান) কখন serialisingএবং deserialisingঅবজেক্ট হিসাবে ব্যবহৃত হবে । উদাহরণস্বরূপ, জাভা ক্ষেত্রের ব্যক্তি নামটি নাম হিসাবে প্রতিনিধিত্ব করা হয় হয়।

JSON উদাহরণ,

{
    "name":"chintan",
    "bd":"01-01-1990"
}

2
@ মুহাম্মাদআলি আপনাকে সাহায্য করতে পেরে আমার আনন্দ। আপনি আমাকে উজাড় করে ক্রেডিট দিতে পারেন এবং আমার প্রিয় উত্তরটি গ্রহণ করতে পারেন :)
চিন্তন রাঠোদ

3
নেতিবাচক ভোটারগণ, দয়া করে আপনার মন্তব্য যুক্ত করুন যাতে নীচের ভোটের উদ্দেশ্য কী তা আমি বুঝতে পারি এবং আমি আমার উত্তরটি আরও উন্নত করতে পারি .. :)
চিন্তন রাঠোদ

4
ভাল উত্তর .... ঠিক পয়েন্ট Json
অবধি

খুশি যে এটি সাহায্য করেছিল। :)
চিন্তন রাঠোদ

1
সত্যিই সহায়ক !! ; আপনাকে অনেক ধন্যবাদ :) @ চিন্তনরথোদ
ইমরান

64

এখানে ইতিমধ্যে কয়েকটি উত্তর রয়েছে তবে আমি যুক্ত করতে চাই যে আপনি যদি ProGuardনিজের কোডটি @SerializedName("name")অবলম্বন করতে ব্যবহার করেন এবং আপনার মডেল শ্রেণিতে ব্যবহার না করেন তবে আপনার জিএসএন কাজ করবে না। কিংকর্তব্যবিমূঢ়তা কারণে, আপনার পরিবর্তনশীল নামের থেকে পরিবর্তিত হতে পারে কারণ String nameথেকে String aভাঙ্গা GSON GSON কী-এর জন্য দেখবে যেমন পার্স মধ্যে ফলেa JSON মধ্যে & এটি ব্যর্থ হবে।

নির্দিষ্ট করে @SerializedName, GSON ভেরিয়েবল নামের উপর ভিত্তি করে জসনকে দেখতে পাবে না এবং কেবল নির্দিষ্ট ব্যবহার করবে @SerializedName

কোর্সের ক্ষেত্রে আপনি প্রগর্ডকে বলতে পারেন যে আপনার মডেলটি অবরুদ্ধ করবেন না, তবে আপনি যদি মডেলটি অবরুদ্ধ করতে চান তবে আপনাকে অবশ্যই উল্লেখ করতে হবে @SerializedName


1
GR8 তথ্য, আমি মডেলগুলি অবহেলা না করার জন্য অগ্রগামীকে বলতাম। এখন, এটি দিয়ে আমি করতে পারি। :)
আকাশপাত্র

1
এটি খুব গুরুত্বপূর্ণ। ২ ঘন্টা হারিয়েছেন এবং যেখানেই @ সরাইলেডনেম যুক্ত করেছেন।
অভিজিৎ কুরানে

2

ক্লাসের শীর্ষে @ কিপ নির্দিষ্ট করে আপনার ডেটা ক্লাসগুলিকে অবহেলা না করার জন্য আপনি প্রগার্ডকে নির্দেশ দিতে পারেন। এটি আপনার ক্লাসকে অপসারণ বা অচল করে দেবে না। যদি ক্ষেত্রের নামটি জেসন কী এর জন্য ব্যবহৃত হয় তবে স্পষ্টভাবে প্রতিটি ক্ষেত্রে প্রতিটি ক্ষেত্রের সাথে @SrizedizedName যুক্ত করার দরকার নেই।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.