Javascript 如何在Javaservlet中从jQuery读取2D数组?

Javascript 如何在Javaservlet中从jQuery读取2D数组?,javascript,java,jquery,arrays,servlets,Javascript,Java,Jquery,Arrays,Servlets,我想将任意复杂的数组数据发送到Javaservlet,但不知道如何在servlet端读取它。以下是客户端: var data = { name : 'Jack', age : 30, info : [ [1,2] , [3,4] , [5,6] ], info2: [1,2,3] } $.ajax({ url: someURL, data: data, success: function(resp) { console.log(resp); } }); 我知道我

我想将任意复杂的数组数据发送到Javaservlet,但不知道如何在servlet端读取它。以下是客户端:

var data = {
  name : 'Jack',
  age  : 30,
  info : [ [1,2] , [3,4] , [5,6] ],
  info2: [1,2,3]
}

$.ajax({
  url: someURL,
  data: data,
  success: function(resp) { console.log(resp); }
});
我知道我可以使用JSON.stringify,然后在服务器端解析它,但是为了这个问题,我不能更改前端代码。如何使用HttpServletRequest对象读取服务器端的“info”变量?我还知道,您可以对单个阵列执行类似的操作:

String[] info2 = request.getParameterValues("info2[]");
但这不适用于二维阵列或更复杂的阵列


有什么想法吗?

如果已知
info
是固定长度数组

private static final int INFO_LEN = 3;
您可以在servlet中收集其值,如下所示:

String[][] info = new String[INFO_LEN][];

for (int i = 0; i < info.length; i++) {
    info[i] = request.getParameterValues("info["+i+"][]");
}
String[][]info=新字符串[info_LEN][];
对于(int i=0;i

如果事先不知道长度,则在循环中收集值,直到得到一个
null

嘿,这很有效!谢谢我想我试过这个,但我想我用整数代替字符串作为我的info 2D数组。这只是给了我子列表中的第一项。很高兴知道这有帮助。我有一个类似的问题。唯一的区别是我的2d数组索引是
String
类型。像这样:
info:[[“property”、“one”]、[“class”、“name”]]
那么如何使用
request
对象在servlet中检索此信息数组内容呢?