JAVA后台解析JSON数据

JSON数据的解析,需要根据返回出来的数据写出对应的实体,目的是方便直接获取数据,  此解析的方法只是针对简单的JSON数据进行解析,对于嵌套比较复杂的JSON数据此方法不可行,需要另寻他法进行解析。仅供参考

import com.alibaba.fastjson.JSON;

import com.alibaba.fastjson.JSONObject;
import com.google.gson.Gson;
import java.util.List;
public class TT {
public static void main(String[] args) {
String json="{'msg':'付款即时到账 未到账可联系我们','data':{'qrcode':'HTTPS://QR.ALIPAY.COM/FKX08406GFWYYSF0YRNC10','istype':'1','realprice':0.05},'code':1,'url':'https://www.paysapi.com/'}";
Mst<JSON> root=JSONObject.parseObject(json,Mst.class);  //json数据的第一层数据
ss result =JSONObject.toJavaObject(root.getData(),ss.class);  //json数据的第二层数据
System.out.println(root.getUrl());//输出回调地址
}


}

//json数据中的最外层实体
class Mst<T>{
private String msg;
private T data;
private String url;
private int code;

public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public int getCode() {
return code;
}
public void setCode(int code) {
this.code = code;
}
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
public T getData() {
return data;
}
public void setData(T data) {
this.data = data;
}


}

//json数据中的嵌套数据实体
class ss{
private String qrcode;
private int istype;
private Double realprice;
public String getQrcode() {
return qrcode;
}
public void setQrcode(String qrcode) {
this.qrcode = qrcode;
}
public int getIstype() {
return istype;
}
public void setIstype(int istype) {
this.istype = istype;
}
public Double getRealprice() {
return realprice;
}
public void setRealprice(Double realprice) {
this.realprice = realprice;
}



}

猜你喜欢

转载自blog.csdn.net/qq_34350964/article/details/80020850