繁体   English   中英

如何解析 JAVA 中的以下 JSON output 并在 ZEC407263157E76E78 中显示所有 RefNo

[英]How can I parse the below JSON output in JAVA and display all RefNo in jsp

{Status=200, dataVal= {"TotalCount":3, "Entities": {"Type":50,"Message":"Submitted for Dispute","TransactionId":"2207280001","RefNo":"0110A2226A28" ,"Amount":932.0,"AccountNo":"1049019264010","Vat":43.0}, {"Type":50,"Message":"提交争议","TransactionId":"2207280003","RefNo" :"5815B2220B23","Amount":479.0,"AccountNo":"1049016101100","Vat":0.0}, {"Type":50,"TransactionId":"2207280002","RefNo":"5815B2220B24","金额":531.0,"AccountNo":"1049016101080","增值税":0.0} } }

这不是有效的 json。 Entities should be an array of objects like this "Entities":[{},{}] once you have a valid json you can use fasterxml.jackson or Gson library to convert this string into JSONObject or you can map json string to POJO

使用字符串函数将您的字符串转换为有效的 JSON。 最终的 json 字符串应该有这个结构

{
    "TotalCount":3, 
    "Entities": [
        {"Type":50,"Message":"Submitted for Dispute","TransactionId":"2207280001","RefNo":"0110A2226A28","Amount":932.0,"AccountNo":"1049019264010","Vat":43.0},
        {"Type":50,"Message":"Submitted for Dispute","TransactionId":"2207280003","RefNo":"5815B2220B23","Amount":479.0,"AccountNo":"1049016101100","Vat":0.0},
        {"Type":50,"TransactionId":"2207280002","RefNo":"5815B2220B24","Amount":531.0,"AccountNo":"1049016101080","Vat":0.0}
    ] 
}

要从您发布的 json 获取上述结构,您可以执行以下操作

String jsonString = Your_Json_String_From_Request;
//Note: below code is space sensitive and written according to the string that you posted in question. 
//You might have to tweak it if the string in replace() function's first parameter has extra or no space.
jsonString = jsonString.substring(jsonString.lastIndexOf("=")+1).trim().replace("\"Entities\": {","\"Entities\": [{").replace("} } }","}]}");

您的 class 结构将 go 是这样的:

数据值 Class

public class DataVal{
    public int TotalCount;
    public List<Entities> Entities;
}

实体 Class

public class Entities{
    public int Type;
    public String Message;
    public String TransactionId;
    public String RefNo;
    public float Amount;
    public String AccountNo;
    public float Vat;
}

Function 将 Json 字符串转换为 DataVal Class (使用 ZA79956B0B2E7BDA27AZD5DAA572D 库)

public DataVal deserializeJson(String jsonString) {
    Gson gson = new Gson();
    DataVal dataVal = gson.fromJson(jsonString, DataVal.class);
    return dataVal;
}

现在用你的 jsonString 调用这个 function

DataVal dataVal = deserializeJson(jsonString)

现在将dataVal添加到目标视图的 model 属性。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM