Java Gson在对象列表上包含字段和排除策略

Java Gson在对象列表上包含字段和排除策略,java,json,spring,gson,Java,Json,Spring,Gson,我有一个用于主对象的GSon序列化程序,如下所示: Class A { String field1; String field2; List<B> listB; } A类{ 字符串字段1; 字符串字段2; 名单b; } 另一类为: Class B { String field3; int field4; List<Object> listO; } B类{ 字符串字段3; 国际字段4; 列表列表; } 我想执行下面给出

我有一个用于主对象的GSon序列化程序,如下所示:

Class A {
    String field1;
    String field2;
    List<B> listB;
}
A类{
字符串字段1;
字符串字段2;
名单b;
}
另一类为:

Class B {
    String field3;
    int field4;
    List<Object> listO;
}
B类{
字符串字段3;
国际字段4;
列表列表;
}
我想执行下面给出的2个操作:
1.在GSon排除策略中,我想删除B.field4并包括所有剩余字段。
2.在序列化中,我只想包括B.field4,所有其他字段都应该删除。
使用现有代码,我可以删除具有简单标识符(如field4)的字段,但问题是它将从所有其他嵌套对象中删除field4(是否有)

因此,我想基于嵌套标识符包括和排除字段,例如B.field4或B.C.field5

有什么解决方案吗?

用户
Gson的注释

Class B {

    @Expose(serialize = false, deserialize = true)
    String field3;

    @Expose(serialize = true, deserialize = false)
    int field4;

    @Expose(serialize = false, deserialize = true)
    List<Object> listO;
}
B类{
@公开(序列化=假,反序列化=真)
字符串字段3;
@公开(序列化=真,反序列化=假)
国际字段4;
@公开(序列化=假,反序列化=真)
列表列表;
}

根据需要调整序列化/反序列化值。

无法通过在实体类中添加注释进行更改,因为它们是由其他人设计的。我只想修改结果并返回给用户。我更喜欢使用排除策略(如果有的话)进行一些调整。