java实体类属性值为null不返回或者某个属性不返回、转成json的时候固定属性顺序(@JsonIgnore、@JsonInclude、@JSONField)
当你返回一个实体类的时候有些属性不想返回,就可以用注解实现
一、@JsonIgnore注解
不管有没有值,都不返回该属性
@JsonIgnore
private String district;
@JsonIgnore
private String pqType;
@JsonIgnore
private String pqLevel;
@JsonIgnore
private SignUpInfo signUpInfo;
添加前
添加后
二、@JsonInclude(value= JsonInclude.Include.NON_NULL)注解
当这个属性只有空值(null)的时候不想返回
@JsonInclude(value= JsonInclude.Include.NON_NULL) private String district; @JsonInclude(value= JsonInclude.Include.NON_NULL) private String pqType; @JsonInclude(value= JsonInclude.Include.NON_NULL) private String pqLevel; @JsonInclude(value= JsonInclude.Include.NON_NULL) private SignUpInfo signUpInfo;
添加前
添加后(值为null的都过滤掉了)
三、@JSONField(ordinal = 1)注解
@JSONField(ordinal = 1) private String result; @JSONField(ordinal = 2) private String message; @JSONField(ordinal = 3) private String district; @JSONField(ordinal = 4) private String pqType; @JSONField(ordinal = 5) private String pqLevel; @JSONField(ordinal = 6) private SignUpInfo signUpInfo;
添加前转成json,每次转成json后属性顺序是乱的,查看问题的时候不容易
添加后,转成json后的属性字段是顺序的,方便很多