简体   繁体   English

如何在Java中的嵌套JSON中删除数组

[英]How to remove arrays in nested json in java

My JSON data looks like this and I am trying to get it sent through datatables.But sub jsons are not settled. 我的JSON数据看起来像这样,我试图通过数据表发送它,但是子json尚未解决。

{"data":[{"code":"001","name":"TEST",
 "drpList":[{"name":null,"bed":"xxx","mbed":null},
{"name":null,"bed":"eeee","mbed":null}]}]}

so i'm decide to change to 所以我决定改成

{"data":[{"code":"001","name":"TEST",
"drpList":{"name":null,"bed":"xxx","mbed":null},
{"name":null,"bed":"eeee","mbed":null}}]}

Java code here Java代码在这里

public @ResponseBody JSONObject getDatafromjson(@RequestParam(required = false) String id,Model model){
    JSONObject ajson = new JSONObject();
    String uri = "https://191.165.1.139:8890/search?id="+id;

    RestTemplate restTemplate = new RestTemplate();
    HttpHeaders headers = new HttpHeaders();
    headers.setAccept(Arrays.asList(MediaType.APPLICATION_JSON));
    HttpEntity<String> entity = new HttpEntity<String>("parameters", headers);
   ResponseEntity<Data> result = restTemplate.exchange(uri, HttpMethod.GET, entity, Data.class);
   Data data =  result.getBody();
   List<sList> ciflist=data.getAccList();
   List<Data> list  =new ArrayList<Data>();
   Data d = new Data();
   d.setName(data.getName());
   d.setCode(data.getCode());
   d.setSList(data.getSList());
   list.add(d); 
   ajson.put("data", list); 
   model = getNotification(model);
return ajson;

}

This is what I have so far. 到目前为止,这就是我所拥有的。 Anyone think they could help? 有人认为他们可以提供帮助吗?

DataTable code: 数据表代码:

$('#table').DataTable({
    "processing": true,
    "serverSide": true,
    "ajax": "Hello.php",
                "bDestroy":true,                                                                        
                 "columns":[
                    {"data": "code"},                                                               
                    {"data": "name"},
                    {"data": "drpList.name"},
                    {"data": "drpList.bed"},                                                                                        
                    {"data": "drpList.mbed"}
                    ],
                    "language": {
                    "lengthMenu": "| View _MENU_ records per page",
                    "zeroRecords": "Nothing found - sorry",
                    "infoEmpty": "No records available",
                    "infoFiltered": "(filtered from _MAX_ total records)"
                    },
                    "pagingType": "full_numbers",
                    "lengthChange": false 
}); 
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;

JSONObject drpList = (JSONObject) jsonObject.get("drpList");
JSONArray bed = (JSONArray) drpList.get("bed");

for (int x = 0; x < bed.size(); x++) {
    JSONObject obj = (JSONObject) bed.get(x);
    JSONArray arr = (JSONArray) obj.get("attr");
    for (int y = 0; y < arr.size(); y++) {
        System.out.println(((JSONObject) arr.get(y)).get("value").toString());
    }
}

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

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