如何在字符串参数中存储JSON字符串值?

如何在字符串参数中存储JSON字符串值?,json,oracle-maf,Json,Oracle Maf,Oracle MCS CustomAPI响应是一个JSON字符串。我想将JSON字符串存储在单独的字符串参数中以创建datacontrol { "Header": { "MessageID": "uE60F40847D", "ReplyTo": { "Address": "http:2005/08/addressing/anonymous" }, "FaultTo": { "Address": "http://www.w3.org2

Oracle MCS CustomAPI响应是一个JSON字符串。我想将JSON字符串存储在单独的字符串参数中以创建datacontrol

{
"Header": {
    "MessageID": "uE60F40847D",
    "ReplyTo": {
        "Address": "http:2005/08/addressing/anonymous"
    },
    "FaultTo": {
        "Address": "http://www.w3.org2005"
    }
},
"Body": {
    "processResponse": {
        "PERSON_ID": "45",
        "GROUPS_ID": "54",
        "PERSON_LOGIN": "s",
        "PERSON_ROLE": "s",
        "PERSON_UID": "4655",
        "PERSON_NAME": "Welcome! Sanka",
        "ERROR_CODE": "y",
        "ERROR_MSG": "Login Successful"
    }
}
}
有人能帮我吗?

第1步。 使用参数创建一个名为
Response
的类

private int responseCode;
private String responseMessage;
还为参数生成getter和setter

第二步。 然后从您的
服务实现
类创建类
响应
的对象,并将响应字符串设置为
。setResponseMessage()

第三步。 在您的bean或Pojo类中

JSONObject jsonObject= new JSONObject(response.getResponseMessage());
JSONObject headerObject = jsonObject.getJsonObject("Header");
然后,您将获得
headerObject
中的所有“Header”参数,并且您可以通过
headerObject.getString(“”
获得单个值

像上面一样,您也可以解析“Body”。将这些值分配给
ArrayList
,然后创建datacontrol

{
"Header": {
    "MessageID": "uE60F40847D",
    "ReplyTo": {
        "Address": "http:2005/08/addressing/anonymous"
    },
    "FaultTo": {
        "Address": "http://www.w3.org2005"
    }
},
"Body": {
    "processResponse": {
        "PERSON_ID": "45",
        "GROUPS_ID": "54",
        "PERSON_LOGIN": "s",
        "PERSON_ROLE": "s",
        "PERSON_UID": "4655",
        "PERSON_NAME": "Welcome! Sanka",
        "ERROR_CODE": "y",
        "ERROR_MSG": "Login Successful"
    }
}
}

如果您对这些步骤有任何疑问,请根据MCS MAF实用程序示例询问

,我必须在CustomapeBacking中添加步骤2没有问题。。。编码结构取决于programmers@Janaki .. 明白了吗?Header很好,但是如何获取processResponse值呢?首先创建一个类似“Header”的主体JSONObject,然后为processResponse创建子JSONObject,然后使用getString()方法从该子json对象获取单个值。