面对不遵照驼峰命名规则的接口咋办?固然首先要吐槽一下,不过接口是别人定的,虽然看着不爽但仍是得去适配,好比cardNumber
,他返回的叫{CARDNUMBER:''}
。 这样致使使用Jackson解析出来的对象的属性均为空,通过跟踪源码发现,是因为其根据getters方法解析的属性,属性字母都变为了小写,这就致使没法解析了出现了jackson Unrecognized field
的问题。code
经过对API的研究能够经过@JsonProperty
以及@JsonAutoDetect
来实现。对象
具体以下看代码接口
@JsonAutoDetect(JsonMethod.FIELD) public class ApiParameter implements Serializable { private static final long serialVersionUID = 1L; @JsonProperty("NAME") private String name; @JsonProperty("CARDNUMBER") private String cardNumber; }
@JsonProperty("CARDNUMBER")
顾名思义,就是显示指定字段的别名,无论是输入仍是输出都是这个名字。get