我有两个json对象

JSONObject org_query = new JSONObject("{\"query\": {\"bool\": {\"must\": [], \"must_not\": [], \"should\": []}}}");

JSONObject query_form = new JSONObject("{\"match_phrase\": {\"Sales Channel\": \"Online\"}}");


我想将第二个对象附加到键must中的第一个对象,并形成一个新的JSON对象。

要求的输出:

{"query":{"bool":{"must_not":[],"should":[],"must":[{"match_phrase": {"Sales Channel": "Online"}}]}}}


我试过了

org_query["query"]["bool"]["must"].append(query_form);


但是显示错误。

array type expected found org.json.jsonarray java


怎么做

最佳答案

在这种情况下,您可以执行以下操作:

org_query = org_query.put("query", org_query.getJSONObject("query").put("bool", org_query.getJSONObject("query").getJSONObject("bool").append("must", query_form)));

10-06 12:40