我的 Pojo 类包含 50 个字段,我只需要将 10 个字段转换为 json。
Genson genson = new Genson.Builder().include("address4", User.class).create();
String json = genson.serialize(user);
“include()”方法似乎不起作用。请帮忙。
Genson genson = new Genson.Builder()
.exclude(Object.class)//this excludes all object types
.include("address4", User.class).create();//then add only required fields
String json = genson.serialize(user);
一个选项是默认禁用所有属性,并选择性地包括您想要的属性,如下所示:
new GensonBuilder()
.useFields(false)
.useMethods(false)
.include("address4", User.class)
.create();
请注意,我认为您也可以@JsonProperty
在要包含的字段上使用注释,而不是通过 GensonBuilder 包含它们。
如果您觉得自己对 lib 做出了贡献,您还可以改进PropertyFilter 类以支持字段名称的正则表达式,或者通过添加另一个方法 excludeAll(Class clazz)/includeAll(Class clazz),这将排除此类的所有属性。我打开了这个问题来跟踪这个功能。