Java json转model

前面有一篇关于  json的转换类的工具:http://blog.csdn.net/hanjun0612/article/details/77891569


但是有一个情况。

由于java需要属性小写开头。

所以针对以下的json字符串,转换model时会出问题

{
	"ResponseResult": true,
	"ResponseMsg": "success",
	"ResponseCode": 200,
	"Data": [{
		"W_Id": 6,
		"CompanyId": 444,
		"CompanyName": "AMERICAN CARGO EXPRESS",
		"W_Name": "AMERICAN CARGO EXPRESS",
		"W_Address": "70 E SUNRISE HIGHTWAY, SUITE 602 VALLEY STREAM, NY 11581, USA",
		"W_Longitude": null,
		"W_Latitude": null,
		"W_UsableArea": null,
		"IsDelete": 0,
		"W_Contact": null,
		"W_Phone": null,
		"W_Remark": null,
		"CreateTime": "2017-05-23T00:00:00"
	}]
}

这里,我直接给出解决方案:使用
@JsonProperty("ResponseCode")

public class BaseModelAPI<T> {
    @JsonProperty("ResponseResult")
    private Boolean responseResult;
    @JsonProperty("ResponseMsg")
    private String responseMsg;
    @JsonProperty("ResponseCode")
    private Integer responseCode;
    @JsonProperty("Data")
    private T data;
    public Boolean getResponseResult() {
        return responseResult;
    }

    public void setResponseResult(Boolean responseResult) {
        this.responseResult = responseResult;
    }

    public String getResponseMsg() {
        return responseMsg;
    }

    public void setResponseMsg(String responseMsg) {
        this.responseMsg = responseMsg;
    }

    public Integer getResponseCode() {
        return responseCode;
    }

    public void setResponseCode(Integer responseCode) {
        this.responseCode = responseCode;
    }

    public T getData() {
        return data;
    }

    public void setData(T data) {
        this.data = data;
    }


}

public class Warehouse {
    private Integer w_Id;
    private Integer companyId;
    
    public Integer getW_Id() {
        return w_Id;
    }

    public void setW_Id(Integer w_Id) {
        this.w_Id = w_Id;
    }

    public Integer getCompanyId() {
        return companyId;
    }

    public void setCompanyId(Integer companyId) {
        this.companyId = companyId;
    }

    
}

转换例子:

BaseModelAPI<List<Warehouse>> result = JsonConvert.fromJson(msg.obj.toString(),new TypeReference<BaseModelAPI<List<Warehouse>>>(){});
BaseModelAPI<User> result = JsonConvert.fromJson(msg.obj.toString(),new TypeReference<BaseModelAPI<User>>(){});


JsonConvert的实现:http://blog.csdn.net/hanjun0612/article/details/77891569










原文地址:https://www.cnblogs.com/hanjun0612/p/9779751.html