-
request.getParameterValues()问题0
在一个JSP页面中,多个<input>的name一样,在servlet中用Map<Integer,String[]> map = new HashMap<Integer, String[]>();
map.put(id, request.getParameterValues(idStr));//这里的idStr就是
//<input> 的name
为什么
for(int i=0;i<map.size();i++){
System.out.println(map.size());
System.out.println(map.get(i).length);
/*for(int j=0;j<str.length;j++){
System.out.println(str[j]);
}*/
}
会报错?2013-8-22 16:33:41 org.apache.catalina.core.StandardWrapperValve invoke 严重: Servlet.service() for servlet AddAnswerSheetServlet threw exception java.lang.NullPointerException at com.answerSheetServlet.AddAnswerSheetServlet.doPost(AddAnswerSheetServlet.java:93) at javax.servlet.http.HttpServlet.service(HttpServlet.java:637) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at com.util.ChinaFilter.doFilter(ChinaFilter.java:16) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:879) at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:600) at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1703) at java.lang.Thread.run(Thread.java:619)
2013年8月22日 16:48
2个答案 按时间排序 按投票排序
-
采纳的答案
String langtype[]=request.getParameterValues("idStr");
for (int i=0;i<size;i++)
{
out.println(langtype[i]+"");
}
上面是循环输出
你for 循环 map 要这么写。
Map<Integer,String> map = new LinkedHashMap<Integer,String>();
map.put(1, "星期一");
map.put(2, "星期二");
map.put(3, "星期三");
map.put(4, "星期四");
map.put(5, "星期五");
map.put(6, "星期六");
map.put(7, "星期日");
for(Map.Entry<Integer, String> entry: map.entrySet()) {
System.out.print(entry.getKey() + ":" + entry.getValue() + "\t");
}2013年8月22日 16:56
-
map.put(key,value);
value=map.get(key);
map.put(id, request.getParameterValues(idStr));
for(int i=0;i<map.size();i++){
System.out.println(map.size());
System.out.println(map.get(i).length);
}
你上面的id=0吗?不然的话map.get(i)也就是map.get(0)是null,null也就不能length。List才是get(0),get(1)这样2013年8月22日 17:12
相关推荐
`request.getParameterMap()`、`request.getParameter()`和`request.getParameterValues()`是三个重要的方法,它们分别用于获取不同类型的请求参数。接下来,我们将深入探讨这三个方法的功能、用法以及它们之间的...
String [] hobbyArr = request.getParameterValues("hobby"); String strDate = request.getParameter("enterDate");//"1999-12-23" Date enterDate = Date.valueOf(strDate); //util.Date SimpleDateFormat /...
例如,`Request.getParameter()`用于获取单个请求参数的值,`Request.getParameterValues()`用于获取多个同名参数的值,而`Request.getParameterNames()`则可以获取所有参数的名称。 2. 页面乱码: 页面乱码通常...
String hobby[] = request.getParameterValues("hobby"); PrintWriter out = response.getWriter(); if (hobby != null) { for (String x : hobby) { out.println("doGet 被调用"); out.println("name:" + ...
使用`request.getParameter("name")`获取单个参数值,对于有多值的参数,如`name[]`,可以使用`request.getParameterValues("name")`获取数组。 - **Cookie**: 通过`request.getCookies()`获取请求携带的所有...
若要获取所有值,可以使用`request.getParameterValues()`方法,它返回一个String数组。 **请求头信息**:除了请求参数,Request对象还包含了HTTP请求头的信息,如User-Agent(标识浏览器类型)、Accept-Language...
- **单选按钮/下拉列表**:通过 `request.getParameter()` 获取选中的值,如果有多个选项,可能需要遍历 `request.getParameterValues()`。 - **复选框**:复选框可能有多个选项被选中,所以通常使用 `request....
在这个JSP示例中,`request.getParameterValues()`返回一个字符串数组,包含了所有同名表单元素的值。我们通过循环遍历数组并打印每个值。 除了基本的获取,我们还可以进行更复杂的操作,如验证、过滤或合并这些值...
String[] ysxx_nl_years = request.getParameterValues("ysxx_nl_year"); //出生年 String[] ysxx_nl_mons = request.getParameterValues("ysxx_nl_mon"); //出生月 String[] ysxx_zcs = request....
String[] ysxx_names = request.getParameterValues("ysxx_name"); // 姓名 String[] ysxx_sexs = request.getParameterValues("ysxx_sex"); // 性别 String[] ysxx_nls = request.getParameterValues("ysxx_...
- JSP 页面如果需要处理表单数据,通常会使用 `request.getParameter()` 或 `request.getParameterValues()` 方法来获取用户输入。 2. Session 对象: - 在同一 Web 服务目录的不同子目录中,用户的 session 对象...
- `request.getParameterValues()`:获取同一参数名的所有值。 - `request.getParameterMap()`:获取所有参数的映射。 - `request.getHeader()`、`request.getHeaderNames()`和`request.getHeaders()`:处理HTTP请求...
String[] hobbies = request.getParameterValues("hobby"); ``` **4. 获取请求客户端信息** `request`对象提供了许多方法用于获取客户端的相关信息,比如请求的协议类型、请求方式、客户端IP地址等。这些信息对于...
如果参数有多个值,可以使用 `request.getParameterValues("paramName")`。 2. URL编码与解码:在处理URL中的中文字符时,需要进行编码防止乱码。使用 `URLEncoder.encode(urlPart, "UTF-8")` 进行编码,`...
String[] colors = request.getParameterValues("colors"); for (String color : colors) { // 处理每个颜色值... } ``` 在实际开发中,我们还需要考虑URL编码和解码。`HttpServletRequest`提供了`getParameter()`...
String[] langtype = request.getParameterValues("langtype"); if (langtype != null) { int size = langtype.length; for (int i = 0; i ; i++) { out.println(langtype[i] + " "); } } ``` 这里,`...
String[] favorites = request.getParameterValues("favorite"); ``` 5. **`getContentType()`**:获取请求体的MIME类型。 - 示例代码: ```java String contentType = request.getContentType(); ``` 6. **...
在JSP中,可以通过`request.getParameterValues()`方法来获取表单中某个字段的所有值。如果表单中的某个字段是复选框或具有多个相同名称的输入项,则该方法返回一个字符串数组。示例代码如下: ```java String ...
例如,如果在表单中有一个多选框,名为“hobby”,那么可以使用request.getParameterValues("hobby")来获取用户选择的所有选项。 3. getParameterNames():获得客户端传送给服务器的所有参数的名字,其结果是一个...
String[] param2Values = request.getParameterValues("param2"); // 获取请求头 String contentType = request.getHeader("Content-Type"); // 获取请求方法 String method = request.getMethod(); // ...