我有以下类(class)-
员工
public class Employee { private String firstName ; private String lastName ; private String emailAddress ; private String ssn ; }
工资单
public class Payroll { // different payroll related fields private Employee emp ; }
人力资源
public class HR { // different HR related fields private Employee emp ; }
现在,当我序列化我的 Payroll 类时,我不想从 Employee 类序列化我的 ssn 字段。
当我序列化 HR 类时,我不想序列化 Employee 类中的 emailAddress 字段。
如何使用 Jackson JSON API 从序列化中动态排除字段?
最佳答案
How I can dynamically exclude fields from serializing by using Jackson JSON API?
这似乎是申请 JacksonJsonViews 的主要候选人.
public class Employee {
private String firstName;
private String lastName;
@JsonView(Views.Payroll.class) private String emailAddress;
@JsonView(Views.HR.class) private String ssn;
}
public class Payroll {
// snip
@JsonView(Views.Payroll.class)
private Employee emp;
}
public class HR {
// snip
@JsonView(Views.HR.class)
private Employee emp;
}
关于json - Jackson JSON 动态忽略属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15773276/