English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

ما هو استخدام تعليق @SerializedName في Gson في Java؟

@SerializedNameيمكن استخدام التعليقات لتحديد أسماء الحقول المستخدمة في التسلسل بدلاً من الأسماء الفعلية للحقول. يمكننا تقديم اسم التسلسل المتوقع كملخص للتعليقات، حيث يضمن Gson استخدام هذا الاسم لقراءة أو كتابة الحقول.

النحو

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

مثال

import com.google.gson.*;
import com.google.gson.annotations.*;
public class SerializedNameTest {
   public static void main(String args[]) {
      Gson gson = new GsonBuilder().setPrettyPrinting().create();
      Person person = new Person(115, "Raja Ramesh", "Hyderabad");
      String jsonStr = gson.toJson(person);
      System.out.println(jsonStr);
   }
}
// بشر
class Person {
   @SerializedName("id")
   private int personId;
   @SerializedName("name")
   private String personName;
   private String personAddress;
   public Person(int personId, String personName, String personAddress) {
      this.personId = personId;
      this.personName = personName;
      this.personAddress = personAddress;
   }
   public int getPersonId() {
      return personId;
   }
   public String getPersonName() {
      return personName;
   }
   public String getPersonAddress() {
      return personAddress;
   }
}

نتيجة الخروج

{
 "id": 115,
 "name": "Raja Ramesh",
 "personAddress": "Hyderabad"
}
أنت قد تستمتع بهذا