我有一个数组,其中包含要作为参数传递的其他数组。我正在使用request.getParameterValues()来获取参数,但问题是只有原始数组以数组格式出现。数组内部的数组将被转换为字符串。还有另一种发送和接收多维数组的方法吗?

最佳答案

如果您使用的是GET方法,则必须构建如下查询:

http://localhost:8080/myApp/myServlet/?habits=Movies&habits=Writing&habits=Singing

如果使用的是POST方法,则必须使用application/x-www-form-urlencoded内容类型,或者仅在HTML表单中使用Post方法。例如:
 <form method="post">
 Habits :
    <input type="checkbox" name="habits" value="Reading">Reading
    <input type="checkbox" name="habits" value="Movies">Movies
    <input type="checkbox" name="habits" value="Writing">Writing
    <input type="checkbox" name="habits" value="Singing">Singing
    <input type="submit" value="Submit">
 </form>

然后,在这两种情况下,您的servlet中:
String[] outerArray=request.getParameterValues('habits');
your array will be filled with separated values:

//["Writing","Singing"]

10-01 02:32