Giriş
Genellikle TypeAdapter arayüzünden kalıtan ve kendimize mahsus JSON serialization ve deserialization yapabilmemizi sağlayan sınıfı belirtmek için kullanılır.
Örnek
Elimizde şöyle bir kod olsun.
Genellikle TypeAdapter arayüzünden kalıtan ve kendimize mahsus JSON serialization ve deserialization yapabilmemizi sağlayan sınıfı belirtmek için kullanılır.
Örnek
Elimizde şöyle bir kod olsun.
public class User() {
private String name;
private String email;
@JsonAdapter(AddressSerializer.class)
private Address address;
...
}
Elimizde şöyle bir kod olsun.public class AddressSerializer implements JsonSerializer<Address> {
@Override
public JsonElement serialize(Address src,Type typeOfSrc,JsonSerializationContext ctx) {
JsonObject jsonAddress = new JsonObject();
jsonAddress.addProperty("address_line1", src.getAddressLine1());
jsonAddress.addProperty("address_line2", src.getAddressLine2());
jsonAddress.addProperty("address_city", src.getCity());
jsonAddress.addProperty("address_postalcode", src.getPostcode());
return jsonAddress;
}
}
Çıktı olarak şunu alırız{
"name": "ana",
"email": "test@test.co.uk",
"address": {
"address_line1": "123 Some Address",
"address_line2": "",
"address_city": "My city",
"address_postalcode": "CV31 9GP"
}
}
Hiç yorum yok:
Yorum Gönder