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











免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM