问题复现:
第三方接口对接的时候,对方返回的json字符串转换成对象的时候,对象的属性为空
分析:
jackson对实体中字段为大写的字段有特殊的序列处理,只需要在实体类的字段上标记@JsonProperty注解就可以了
解决方案:
@Data
public class ErpResponseVo implements Serializable {
private static final long serialVersionUID = 4273229936161531704L;
@JsonProperty(value = "Code")
private String Code;
@JsonProperty(value = "Message")
private String Message;
}
注: jackson默认序列化的字段顺序不会按照实体的顺序输出,如果想json序列化出来的字段按照自定义的输出,指定@JsonProperty注解的index就可以了。
@Data
public class RefundNoticeBizContent implements Serializable {
private static final long serialVersionUID = 5673675385470789330L;
/**
* 平台订单号
*/
@JsonProperty(value = "PlatOrderNo", index = 1)
private String PlatOrderNo;
/**
* 平台子订单号
*/
@JsonProperty(value = "SubOrderNo", index = 2)
private String SubOrderNo;
}
版权声明:本文为liuchang19950703原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。