GSON library
에서 으로는 어떤 옵션이 있습니까?은 확장 클래스의 일부 레벨을 넘어 직렬화/비 직렬화됩니다. ThirdClass
및 SecondClass
을 - fromJson
및 toJson
를 사용하는 경우 GSON은 확장 클래스를 직렬화/비 직렬화하지 않습니다.
class FirstClass {
int firstVariable;
}
class SecondClass extends FirstClass {
int secondVariable;
}
class ThirdClass extends SecondClass {
int thirdVariable;
}
과를 참조하십시오. 즉, level 3
에 있기 때문에 전체 FirstClass
(및 그 안에 firstVariable
)을 무시한다는 의미입니다.
private static final Gson GSON = new GsonBuilder().addSerializationExclusionStrategy(new ExclusionStrategy() {
@Override
public boolean shouldSkipField(FieldAttributes f) {
return f.getDeclaringClass().equals(FirstClass.class);
}
@Override
public boolean shouldSkipClass(Class<?> clazz) {
return false;
}
}).create();
또한 역 직렬화에 ExclusionStrategy를 추가 할 수 있습니다
왜 사용자 정의 유형 어댑터 작성에 문제가 있습니까? 대부분의 유지 관리 통증을 제거하는 유형 어댑터를 작성할 수 있습니다. –