[java] Gson 라이브러리에서 JSON의 특정 필드를 무시하는 방법은?
하나의 필드를 무시하기 위해서는 @SerializedName
어노테이션을 사용할 수 있습니다. 이 어노테이션을 필드 위에 추가하고, exclude
속성에 true
를 설정하면 해당 필드는 변환과정에서 무시됩니다.
public class MyClass {
@SerializedName(value = "field1", alternate = {"alias1", "alias2"})
private String field1;
@SerializedName(value = "field2", alternate = {"alias3", "alias4"})
private int field2;
//... 나머지 필드와 메소드들 ...
}
위의 예제에서 @SerializedName
어노테이션을 사용하여 field1
과 field2
는 각각 field1
과 field2
라는 이름을 가진 JSON 필드와 매핑됩니다. 또한 value
속성의 값을 사용하여 해당 필드의 별칭(alias)도 설정할 수 있습니다.
JSON 데이터의 필드명과 자바 객체의 필드명이 다를 경우 @SerializedName
어노테이션을 이용하여 이름을 매칭시킬 수 있습니다.
String json = "{\"field1\": \"value1\", \"alias2\": 100}";
Gson gson = new Gson();
MyClass obj = gson.fromJson(json, MyClass.class);
System.out.println(obj.getField1()); // output: value1
System.out.println(obj.getField2()); // output: 100
위의 예제에서 JSON 데이터의 field1
값은 자바 객체의 field1
필드에 매핑되고, alias2
값은 field2
필드에 매핑됩니다. @SerializedName
어노테이션을 사용하면 다양한 필드명과 별칭을 매칭시킬 수 있습니다.
이러한 방식으로 Gson 라이브러리를 사용하여 JSON 데이터에서 특정 필드를 무시할 수 있습니다. Gson에 대한 자세한 내용은 Gson 공식 문서를 참고하시기 바랍니다.
참고: Gson 공식 문서