如何在使用Jackson将以下POJO转换为JSON时忽略标签“condition”?
class Criteria<T> {
private Map<String, Condition<T>> condition;
@JsonProperty
public Map<String, Condition<T>> getCondition() {
return condition;
}
public Criteria<T> setCondition(Map<String, Condition<T>> condition) {
this.condition = condition;
return this;
}
}
class Condition<T> {
String field;
T value;
public String getField() {
return field;
}
public Condition setField(String field) {
this.field = field;
return this;
}
public T getValue() {
return value;
}
public Condition setValue(T value) {
this.value = value;
return this;
}
}
实际输出包含字段标签“condition”,如下所示。
实际输出: {“criteria”:{“condition”:{“EQUALS”:{“field”:“column1”,“value”:“col_value”}}}}
预期输出 {“criteria”:{“EQUALS”:{“field”:“column1”,“value”:“col_value”}}}
答案 0 :(得分:1)
找到解决方案,在相应的getter方法上使用@JsonValue注释而不是@JsonProperty。