I have a scenario where i need to use the payload as
{"authType":"PDS"}
or
{"authType":"xyz","authType2":"abc",}
or
{"authType":"xyz","authType2":"abc","authType3":"123"}
or
any combination except for null values.
引用代码我有3个字段,但只使用空值字段。 基本上我不想包含具有空值的字段。
是否有任何注释可用于完成任务
public class AuthJSONRequest {
private String authType;
private String authType2;
private String authType3;
public String getAuthType() {
return authType;
}
public void setAuthType(String authType) {
this.authType = authType;
}
public String getAuthType2() {
return authType2;
}
public void setAuthType2(String authType2) {
this.authType2 = authType2;
}
public String getAuthType3() {
return authType3;
}
public void setAuthType3(String authType3) {
this.authType3 = authType3;
}
}
答案 0 :(得分:10)
尝试JSON视图?请参阅this或this。或者,有关更多过滤功能,请参阅this blog entry(例如Json过滤器)。
答案 1 :(得分:5)
这正是杰克逊2中的注释@JsonInclude
和杰克逊中@JsonSerialize
的注释。
如果您希望某个属性仅在不等于null
时显示,请添加@JsonInclude(Include.NON_NULL)
resp。 @JsonSerialize(include=Include.NON_NULL)
。