我有一个数组,它包含我作为参数传递的其他数组。我使用request.getParameterValues()
来获取参数但问题只是原始数组以数组格式出现。数组中的数组正在转换为字符串。还有另一种发送和接收多维数组的方法吗?
答案 0 :(得分:21)
如果您使用的是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"]
答案 1 :(得分:1)
如果内部数组以逗号(,)分隔,则尝试以下代码
String[] outerArray=request.getParameterValues('parameterName');
String[] innerArray=outerArray[0].split(",");
动态地,您可以执行此操作并使用不同的String[]
来存储数据或使用ArrayList
String[]
for (int i = 0; i < outerArray.length; i++) {
String[] innerArray=outerArray[i].split(",");
}