0 0

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个答案 按时间排序 按投票排序

0 0

采纳的答案

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
0 0

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()返回的是String []数组1

    `request.getParameterMap()`、`request.getParameter()`和`request.getParameterValues()`是三个重要的方法,它们分别用于获取不同类型的请求参数。接下来,我们将深入探讨这三个方法的功能、用法以及它们之间的...

    数据库测试test.sql

    String [] hobbyArr = request.getParameterValues("hobby"); String strDate = request.getParameter("enterDate");//"1999-12-23" Date enterDate = Date.valueOf(strDate); //util.Date SimpleDateFormat /...

    Request对象和乱码解决.doc

    例如,`Request.getParameter()`用于获取单个请求参数的值,`Request.getParameterValues()`用于获取多个同名参数的值,而`Request.getParameterNames()`则可以获取所有参数的名称。 2. 页面乱码: 页面乱码通常...

    java web学习_浅谈request对象中get和post的差异

    String hobby[] = request.getParameterValues("hobby"); PrintWriter out = response.getWriter(); if (hobby != null) { for (String x : hobby) { out.println("doGet 被调用"); out.println("name:" + ...

    sevlet生命周期,request web.xml 及ServletContext总结

    使用`request.getParameter("name")`获取单个参数值,对于有多值的参数,如`name[]`,可以使用`request.getParameterValues("name")`获取数组。 - **Cookie**: 通过`request.getCookies()`获取请求携带的所有...

    JSP.rar_request jsp

    若要获取所有值,可以使用`request.getParameterValues()`方法,它返回一个String数组。 **请求头信息**:除了请求参数,Request对象还包含了HTTP请求头的信息,如User-Agent(标识浏览器类型)、Accept-Language...

    基于jsp的表单多种控件接收例子

    - **单选按钮/下拉列表**:通过 `request.getParameter()` 获取选中的值,如果有多个选项,可能需要遍历 `request.getParameterValues()`。 - **复选框**:复选框可能有多个选项被选中,所以通常使用 `request....

    HTML或JSP中多个同名表单元素值的获取

    在这个JSP示例中,`request.getParameterValues()`返回一个字符串数组,包含了所有同名表单元素的值。我们通过循环遍历数组并打印每个值。 除了基本的获取,我们还可以进行更复杂的操作,如验证、过滤或合并这些值...

    private2private2private2

    String[] ysxx_nl_years = request.getParameterValues("ysxx_nl_year"); //出生年 String[] ysxx_nl_mons = request.getParameterValues("ysxx_nl_mon"); //出生月 String[] ysxx_zcs = request....

    privateprivateprivateprivate

    String[] ysxx_names = request.getParameterValues("ysxx_name"); // 姓名 String[] ysxx_sexs = request.getParameterValues("ysxx_sex"); // 性别 String[] ysxx_nls = request.getParameterValues("ysxx_...

    2020 JSP课后习题1

    - JSP 页面如果需要处理表单数据,通常会使用 `request.getParameter()` 或 `request.getParameterValues()` 方法来获取用户输入。 2. Session 对象: - 在同一 Web 服务目录的不同子目录中,用户的 session 对象...

    JSP2_0技术学习笔记

    - `request.getParameterValues()`:获取同一参数名的所有值。 - `request.getParameterMap()`:获取所有参数的映射。 - `request.getHeader()`、`request.getHeaderNames()`和`request.getHeaders()`:处理HTTP请求...

    JSP 9大内置对象学习总结

    String[] hobbies = request.getParameterValues("hobby"); ``` **4. 获取请求客户端信息** `request`对象提供了许多方法用于获取客户端的相关信息,比如请求的协议类型、请求方式、客户端IP地址等。这些信息对于...

    jsp获取url路径的方法分析.docx

    如果参数有多个值,可以使用 `request.getParameterValues("paramName")`。 2. URL编码与解码:在处理URL中的中文字符时,需要进行编码防止乱码。使用 `URLEncoder.encode(urlPart, "UTF-8")` 进行编码,`...

    request获取url以及其参数

    String[] colors = request.getParameterValues("colors"); for (String color : colors) { // 处理每个颜色值... } ``` 在实际开发中,我们还需要考虑URL编码和解码。`HttpServletRequest`提供了`getParameter()`...

    java getParameterValues

    String[] langtype = request.getParameterValues("langtype"); if (langtype != null) { int size = langtype.length; for (int i = 0; i ; i++) { out.println(langtype[i] + " "); } } ``` 这里,`...

    JSP的request对象实例详解

    String[] favorites = request.getParameterValues("favorite"); ``` 5. **`getContentType()`**:获取请求体的MIME类型。 - 示例代码: ```java String contentType = request.getContentType(); ``` 6. **...

    jsp 将从表单中获得的数组的值-含中文 进行转码后在JSP中正确显示

    在JSP中,可以通过`request.getParameterValues()`方法来获取表单中某个字段的所有值。如果表单中的某个字段是复选框或具有多个相同名称的输入项,则该方法返回一个字符串数组。示例代码如下: ```java String ...

    JSP中的request对象

    例如,如果在表单中有一个多选框,名为“hobby”,那么可以使用request.getParameterValues("hobby")来获取用户选择的所有选项。 3. getParameterNames():获得客户端传送给服务器的所有参数的名字,其结果是一个...

    request的实例源码

    String[] param2Values = request.getParameterValues("param2"); // 获取请求头 String contentType = request.getHeader("Content-Type"); // 获取请求方法 String method = request.getMethod(); // ...

Global site tag (gtag.js) - Google Analytics