JAVAはGsonを使って特定のフィールドを排除します.
1531 ワード
1.無視値はNULLです
Gson gson = new GsonBuilder().serializeNulls().create();
2.Javaキーワードのtranientを使うclass Item {
String name;
public transient int age;
}
3.@Exposeでコメントするclass Item {
String name;
@Expose
public int age;
public void gson() {
// excludeFieldsWithoutExposeAnnotation
Gson gson = new GsonBuilder().excludeFieldsWithoutExposeAnnotation()
.create();
}
}
4.Modifier修饰子を除外する指定されたタイプのフィールドclass Item {
String name;
@Expose
public int age;
public void gson() {
// protcted
Gson gson = new GsonBuilder().excludeFieldsWithModifiers(Modifier.PROTECTED).create();
}
}
5.Exclusion Strategyを使ってフィールドをカスタマイズして除外する戦略class Item {
String name;
@Expose
public int age;
public void gson() {
// protcted
Gson gson = new GsonBuilder().setExclusionStrategies(new ExclusionStrategy() {
@Override
public boolean shouldSkipField(FieldAttributes f) {
// "age"
return f.getName().contains("age");
}
@Override
public boolean shouldSkipClass(Class> clazz) {
// Bean
return clazz.getName().contains("Bean");
}
}).create();
}
}