Rumah >Java >javaTutorial >Bagaimana untuk mensiri dan menyahsiri JSON menggunakan antara muka ExclusionStrategy dalam Java?
Antara muka ExclusionStrategy boleh digunakan untuk mengecualikan sebarang medan semasa bersiri dan penyahsirilan. Kami boleh menyediakan pelaksanaan tersuai bagi antara muka ExclusionStrategy dan mendaftarkannya dengan GsonBuilder menggunakan kaedah setExclusionStrategies(). Ia mengkonfigurasi Gson untuk menggunakan satu set dasar pengecualian semasa penyirian dan penyahserikatan.
public GsonBuilder setExclusionStrategies(ExclusionStrategy... strategies)
import com.google.gson.*; import com.google.gson.ExclusionStrategy; import com.google.gson.FieldAttributes; public class ExclusionStrategyTest { public static void main(String args[]) throws Exception { <strong>Gson </strong>gson = new GsonBuilder().setExclusionStrategies(new CustomExclusionStrategy()).create(); Person person = new Person(); person.setFirstName("Adithya"); person.setLastName("Sai"); person.setAddress("Hyderabad"); String jsonString = gson.toJson(person); System.out.println("Serialize a JSON: \n "+jsonString); String inputJson = "{\"firstName\":\"Raja\", \"lastName\":\"Ramesh\", \"address\":\"Hyderabad\"}"; person = gson.fromJson(inputJson, Person.class); System.out.println("Deserialize a JSON:\n"+ person); } } // CustomExclusionStrategy class class CustomExclusionStrategy implements ExclusionStrategy { public boolean shouldSkipField(FieldAttributes f) { if(f.getName().equals("firstName")) { return true; } return false; } public boolean shouldSkipClass(Class aClass) { return false; } } // Person class class Person { private String firstName, lastName, address; public String getFirstName() { return firstName; } public void setFirstName(String firstName) { this.firstName = firstName; } public String geLastName() { return lastName; } public void setLastName(String lastName) { this.lastName = lastName; } public String getAddress() { return address; } public void setAddress(String address) { this.address = address; } public String toString() { return "Person [" + firstName + " " + lastName + " " + address + "]"; } }
Serialize a JSON: {"lastName":"Sai","address":"Hyderabad"} Deserialize a JSON: Person [null Ramesh Hyderabad]
Atas ialah kandungan terperinci Bagaimana untuk mensiri dan menyahsiri JSON menggunakan antara muka ExclusionStrategy dalam Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!