Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/360.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 解析JSON响应_Java_Json_Restful Url_Phrase - Fatal编程技术网

Java 解析JSON响应

Java 解析JSON响应,java,json,restful-url,phrase,Java,Json,Restful Url,Phrase,我试图表达下面的json响应,并获取java中的“消息””和“WORKORDERID”数据 { "operation": { "result": { "message": " successfully.", "status": "Success" }, "Details": { "SUBJECT": "qqq", "WORKORDERID": "

我试图表达下面的json响应,并获取java中的“
消息”
”和“
WORKORDERID
”数据

{
    "operation": {
        "result": {
            "message": " successfully.",
            "status": "Success"
        },
        "Details": {
            "SUBJECT": "qqq",
            "WORKORDERID": "800841"
        }
    }
}
下面是我的代码

JSONObject inputs = new JSONObject(jsonResponse);
JSONObject jsonobject = (JSONObject) inputs.get("operation");
String s = jsonobject.getString("message");
system.out.println("s");

对象嵌套了2次,因此应执行以下操作:

JSONObject inputs = new JSONObject(jsonResponse);

JSONObject operation= (JSONObject) inputs.get("operation");
JSONObject result= (JSONObject) operation.get("result");
JSONObject details= (JSONObject) operation.get("Details");
String message = result.getString("message");
String workerId = details.getString("WORKORDERID");

对象嵌套了2次,因此应执行以下操作:

JSONObject inputs = new JSONObject(jsonResponse);

JSONObject operation= (JSONObject) inputs.get("operation");
JSONObject result= (JSONObject) operation.get("result");
JSONObject details= (JSONObject) operation.get("Details");
String message = result.getString("message");
String workerId = details.getString("WORKORDERID");

JSONObject类似于映射包装器,所以您可以认为JSON数据结构是
Map
。所以,首先您需要通过第一个键(操作),第二个键(结果)访问数据,然后,您可以访问所需的字段(消息)


注意,Map的值是Object,所以您需要将类型强制转换为JSONObject。

JSONObject是类似于Map包装器的东西,所以您可以认为,您的JSON数据结构是
Map
。所以,首先您需要通过第一个键(操作),第二个键(结果)访问数据,然后,您可以访问所需的字段(消息)


注意,Map的值是Object,所以您需要将类型强制转换为JSONObject。

有时在java中找不到JSONObject类。因此,您需要添加


有时在java中找不到JSONObject类。因此,您需要添加


您打印字符串
“s”
而不是变量
s
您打印字符串
“s”
而不是变量
s
如果答案解决了您的问题,接受它就好了。:)如果答案解决了你的问题,那么你接受它就好了。:)