如何在java中检索ajax从javascript发送的jsonarray数据
我的javascript代码。我正在用一些元素创建一个jsonarray。现在,我想检索该数据并将其存储在一个JavaJSON对象中,以便进一步处理如何在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
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。我认为您缺少一些需要添加的内容。