获取与特定组或contxt相关的Json属性

时间:2019-01-31 03:42:56

标签: java json jackson

我想找到一种适当的方式来根据不同的上下文构建不同的json;

例如,给定

@Data
public class Individual {

    private Address address;

    @myAnnotation(Perso.class)
    private String firstName;

    @myAnnotation(Perso.class)
    private String lastName;

    @myAnnotation(Finance.class)
    private String bankName;
}

@Data
public class Address {
    @myAnnotation(Perso.class)
    private String street;

    @myAnnotation(Perso.class)
    private String number;
}

我想要一个特定的注释,可以巧妙地为我过滤属性

例如,如果我在“ Perso”的上下文中运行序列化程序,它将给我

{
       address : {
            street: "XXXX"
            number: "XXXX"
       }
        firstName: "XXXX"
        lastName: "XXXX"
}

但是如果我在“财务”的背景下运行它,只会给我

 {
       bankName: "XXXX"
 }

我知道javax验证在声明组的地方使用了带有注释的相同Thins:例如@NotBlank(groups = {PersonalDataForm.class})

我想要一个轻巧的功能,允许我做同样的事情!

有没有图书馆可以让我做我打算做的事情?

1 个答案:

答案 0 :(得分:1)

我认为您正在寻找Jackson JSON Views