使用google的Gson工具时,有时候在将对象序列化成Json字符串时,不需要有些字段,这个时候,就可以用Gson的设定序列策略来处理:
public class People {
public String name;
public String id;
public int count;
}
比如我序列化的时候不想要count字段,那么我就这样设置
Gson gson = new GsonBuilder()
.addSerializationExclusionStrategy(new ExclusionStrategy() {
@Override
public boolean shouldSkipField(FieldAttributes f) {
if ("count".equals(f.getName())) return true; //排除count
return false;
}
@Override
public boolean shouldSkipClass(Class<?> clazz) {
// 直接排除某个类 ,return true为排除
return (clazz == int.class || clazz == Integer.class);
}
})
.create();
People peo = new People();
peo.name = "AA";
peo.id = "123"
String jsonBody = gson.toJson(peo);
那么最后的jsonBody就会将count字段排除。
本文介绍如何使用Gson的序列化策略排除特定字段。通过示例代码展示,当序列化对象为JSON字符串时,可以设定策略跳过不希望包含的字段,如本例中的'count'字段。
356

被折叠的 条评论
为什么被折叠?



