将查询字符串中的2D数组传递给JSP

时间:2012-10-26 11:53:18

标签: jsp query-string

我想在查询字符串中创建一个2D数组并将其传递给JSP。我可以附加字符串,但我找不到附加二维数组的语法。

示例:

  

的http://本地主机:8080 / queryWithQueryString twodArray [0] [0] =&STOREID放大器; twodArray [0] [1] = 101

我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:0)

你可以按原样使用它。参数名称将以字面形式准确到达。 JSP对此没有任何特殊处理(与PHP不同)。因此,您需要自己解析

String[][] twodArray = new String[1][];
twodArray[0] = new String[2];
twodArray[0][0] = request.getParameter("twodArray[0][0]");
twodArray[0][1] = request.getParameter("twodArray[0][1]");

对多个参数名称使用标准HTTP约定可能更容易。

  

的http://本地主机:8080 / queryWithQueryString twodArray [0] =&STOREID放大器; twodArray [0] = 101

String[][] twodArray = new String[1][];
twodArray[0] = request.getParameterValues("twodArray[0]");

使用List<String[]>代替String[][]可能也更容易,因为List可以动态扩展。如果您事先不知道项目数量,这将非常有用。

List<String[]> twodArray = new ArrayList<String[]>();

for (int i = 0; i < Integer.MAX_VALUE; i++) {
    String[] values = request.getParameterValues("twodArray[" + i + "]");
    if (values == null) break;
    twodArray.add(values);
}