在Servlet中读取Javascript 2d String数组

时间:2016-06-08 08:46:38

标签: javascript java arrays servlets

我的JavaScript应用程序中有一个二维数组变量,我想在Java Servlet中读取该数组。

var arry = [["property","one"],["class","name"]];

我使用AJAX将其传递给servlet:

$.ajax({
    type: "POST",
    url: "DocumentUploader",
    data: 'array1=' + arry,
    dataType: "json"
}); 

现在我知道我可以通过request.getParameter("array1")来遍历数组。但问题是,显然我无法访问数组索引值:

String[] arr = request.getParameter("array1");
System.out.println(arr[0][1]);

索引的类型为String。 请告诉我是否有任何方法可以阅读这种类型的JS数组?

2 个答案:

答案 0 :(得分:0)

您需要一些工具来读取格式为String的JSON并将其转换为Java对象。

你有JsonObject随Java一起提供(但我相信只有JavaEE)。详细了解here

然后你有两个流行的JSON处理库,JacksonGSON。两者都不是最好的,但杰克逊往往更受欢迎,因为它处理与泽西岛的自动绑定。

答案 1 :(得分:0)

arry = [{"property": "one"},{"class": "name"}];

尝试使用此格式格式化数组,然后在Java端使用JSON.parse。我希望它有所帮助