बहिष्करण रणनीति इंटरफ़ेस का उपयोग किसी भी फ़ील्ड को बाहर करने . के लिए किया जा सकता है क्रमांकन और अक्रमांकन के दौरान। हम बहिष्करण रणनीति . का एक कस्टम कार्यान्वयन प्रदान कर सकते हैं इंटरफ़ेस और इसे GsonBuilder . के साथ पंजीकृत करने की आवश्यकता है s . का उपयोग करना etExclusionStrategies() तरीका। यह क्रमांकन और अक्रमांकन के दौरान बहिष्करण रणनीतियों के एक सेट को लागू करने के लिए Gson को कॉन्फ़िगर करता है।
सिंटैक्स
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 { Gson 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]