这是我的课:
public class OutstandingContact implements Parcelable {
public String phoneNumber;
public String gstIn;
public String cin;
public String email;
public String pincode;
public String emailCc;
public List<String> addressList;
public OutstandingContact() {
}
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel parcel, int i) {
parcel.writeString(this.phoneNumber);
parcel.writeString(this.gstIn);
parcel.writeString(this.cin);
parcel.writeString(this.email);
parcel.writeString(this.pincode);
parcel.writeString(this.emailCc);
parcel.writeStringList(this.addressList);
}
protected OutstandingContact(Parcel in) {
this.phoneNumber = in.readString();
this.gstIn = in.readString();
this.cin = in.readString();
this.email = in.readString();
this.pincode = in.readString();
this.emailCc = in.readString();
this.addressList = in.createStringArrayList();
}
public static final Creator<OutstandingContact> CREATOR = new Creator<OutstandingContact>() {
@Override
public OutstandingContact createFromParcel(Parcel source) {
return new OutstandingContact(source);
}
@Override
public OutstandingContact[] newArray(int size) {
return new OutstandingContact[size];
}
};
}
在服务器 API 请求 (POST) 中将其作为正文发送时,对象“稳定性”会自动添加到其中。这在我的设备上是无法重现的,但用户在服务器请求验证失败的情况下会遇到这种情况。
例如: 身体是这样的:
{
"phoneNumber": "99999999"
"gstIn": ANDNFJKDNF43848"
"cin": ""
"email": [email protected]
"pincode": "000001"
"emailCc": ""
"addressList": []
"stability": true
}
Jackson 默认情况下包含每个具有 getter 的属性。这包括像
isStability()
或 getStability()
这样的方法 - 不仅是您自己定义的方法,还包括继承的方法,其中包括默认方法。
由于这个
Parcelable
接口不是你的,所以你不能用 @JsonIgnore
注释这个 getter。您可以覆盖它只是为了添加它,但是 Jackson 有一个类似的注释,您可以在您的类上添加:JsonIgnoreProperties
:
@JsonIgnoreProperties("stability")
public class OutstandingContact implements Parcelable {
...
}