Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/305.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中检索ajax从javascript发送的jsonarray数据_Javascript_Java_Json - Fatal编程技术网

如何在java中检索ajax从javascript发送的jsonarray数据

如何在java中检索ajax从javascript发送的jsonarray数据,javascript,java,json,Javascript,Java,Json,我的javascript代码。我正在用一些元素创建一个jsonarray。现在,我想检索该数据并将其存储在一个JavaJSON对象中,以便进一步处理 var priceList=[]; push({“itemId”:itemId1,“idElem”:idElem1,“isActive”:isActive1,“description”:description1}); push({“itemId”:itemId2,“idElem”:idElem2,“isActive”:isActive2,“desc

我的javascript代码。我正在用一些元素创建一个jsonarray。现在,我想检索该数据并将其存储在一个JavaJSON对象中,以便进一步处理

var priceList=[];
push({“itemId”:itemId1,“idElem”:idElem1,“isActive”:isActive1,“description”:description1});
push({“itemId”:itemId2,“idElem”:idElem2,“isActive”:isActive2,“description”:description2});
var param={'objarray':价格列表,'user':user}

    $.ajax({
      url : 'cPayment,
      type: 'POST', 
      dataType: 'json',  
      data: param,
      success: function(result) {
          alert('SUCCESS');
      }
    });
在java代码中:

String objArray = request.getParameter("objarray");
JSONArray jsonArray = new JSONArray();
for(//for items in objArray) {
JSONObject jsonObj = new JSONObject(); 
jsonObj.put("itemId", itemId);
jsonObj.put("idElem", idElem);
jsonObj.put("isActive", isActive);
jsonObj.put("description", "description");
jsonArray.put( jsonObj);
}

请帮助我以java jsonobject的形式在java中检索javascript json数组数据。

在Ajax调用中尝试json.parse(param)

尝试以下java代码:

JSONObject jsonObject = null;
try {
        jsonObject = new JSONObject(req.getParameter("objarray"));
    } catch(JSONException _instance) {
        // Exception Handle Message
    }
    System.out.println("Entered in to the controller ");
    String itemId ="" ;
    if(jsonObject.has("itemId")) {
       name = objarray.getString("itemId");
    }

我使用了下面的代码,它对我有用

在Javascript代码中:

var param = {'objarray' : JSON.stringify(priceList), 'user' : user};
在servlet端,我使用org.json.simple.JSONArray和org.json.simple.JSONObject来检索数据

我的Java代码:

JSONParser parser=new JSONParser();
    try {
        String objarray = URLDecoder.decode(request.getParameter("objarray"), "UTF-8");
        jsonArrayObj = (JSONArray) parser.parse(objarray);
    } catch (UnsupportedEncodingException e) {
        e.printStackTrace();
    } catch (ParseException e) {
        e.printStackTrace();
    }

    for(int i= 0; i <jsonArrayObj.size() ;i++) {
        JSONObject psItem = (JSONObject)jsonArrayObj.get(i);
        Integer itemId = Integer.valueOf((String) psItem.get("itemId "));
        String idElem = (String) psItem.get("idElem");
        String description= (String) psItem.get("description");
        String isActive= Boolean.valueOf((String)psItem.get("isActive"));
        Syste.out.println("Item Id --> " +itemId);
        Syste.out.println("Id Element --> "+idElem );
        Syste.out.println("Description --> "+description);
        Syste.out.println("Is Active --> "+isActive);
       }
JSONParser=newjsonparser();
试一试{
字符串objarray=urldecker.decode(request.getParameter(“objarray”),“UTF-8”);
jsonArrayObj=(JSONArray)parser.parse(objarray);
}捕获(不支持的编码异常e){
e、 printStackTrace();
}捕获(解析异常){
e、 printStackTrace();
}

对于(int i=0;i),您需要发布更多的服务器端代码,并更具体地说明实际问题是什么。在将javascript json数组转换为java特定对象并在for循环中迭代该数组时,我遇到了一个问题。我问的是如何在服务器端检索。$.ajax({dataType:'json',data:'objarray=”+param,success:function(result){};如果需要,我们必须使用JSON.stringify(param);在catch block之后。您在使用jsonObject做什么,以及从哪里获得objarray。我认为您缺少一些需要添加的内容。