android杰克逊@JsonIgnore财产

时间:2017-04-08 04:53:14

标签: java android json jackson

在我的API回复中,我有两个字段:event_dateevent_datetimeevent_date返回 ISO date 格式,在我的android类中,我将此变量设为 String 类型。我想在Jackson中忽略这个属性,因为它会抛出类型不匹配的错误。请注意,我只想在响应中忽略此字段。我想将此字段用作请求参数。

我已经尝试过@JsonIgnore注释,但它对我不起作用。在杰克逊有没有其他方法可以忽略这个变量?

@JsonIgnore
private String eventDate;
private String eventDateTime;

@JsonIgnore
public String getEventDate() {
    return eventDate;
}

@JsonProperty("event_date")
public void setEventDate(String eventDate) {
    this.eventDate = eventDate;
}

@JsonProperty("event_datetime")
public String getEventDateTime() {
    return eventDateTime;
}

public void setEventDateTime(String eventDateTime) {
    this.eventDateTime = eventDateTime;
}

2 个答案:

答案 0 :(得分:0)

删除@JsonProperty("event_date")。我认为这是导致问题的原因。

答案 1 :(得分:-2)

这是因为您使用了org.fasterxml.jackson中的@JsonIgnore

替换您的导入:

import org.fasterxml.jackson.annotate.JsonIgnore;

import org.codehaus.jackson.annotate.JsonIgnore;