在项目中遇到了用户Post了json格式的数据给服务器,但是用@RequestBody 并没有注入成功参数;

用户传入的Json如下

{"AccTrType":"2","Number":1,"AccTrAmt":"1500","mem":""}

实体类如下

public class PayInfos implements Serializable {
	
	//交易类型
	private String AccTrType;
	//数量
	private int Number;
	//金额
	private String AccTrAmt;
	//备注
	private String mem;

        // setter...getter...
        
}

解决方案:
因为Json中传的字段是大写字母开头的,SpringBoot在注入的时候弄成了小写,所以注入失败了。
在需要注入的字段上加上 @JsonProperty("AccTrType") 即可。

解决后的实体类如下:

public class PayInfos implements Serializable {
	
	private static final long serialVersionUID = 1L;
	//交易类型
	@JsonProperty("AccTrType")
	private String AccTrType;

	//数量
	@JsonProperty("Number")
	private int Number;

	//金额
	@JsonProperty("AccTrAmt")
	private String AccTrAmt;
	//备注
	@JsonProperty("mem")
	private String mem;
}
上一篇 下一篇