request获取表单 Map

来源:互联网 发布:在校大学生贷款软件 编辑:程序博客网 时间:2024/06/04 21:52
今天学习了一个获取提交表单数据的新方法request.getParameterMap。

  在此之前,获取表单数据时总是用request.getParameter(“name”),根据表单中的name值获取value值,需要获取几项就得重复写几次getParameter,而request.getParameterMap方法则不同,不需要参数返回结果为Map<String,String[]>     将提交的form表单中的所有的项以id为key值,以value组成的String数组类型为value。


实例展示:

html页面

[html] view plain copy print?在CODE上查看代码片派生到我的代码片
  1. <input type="text" id="txt" name="txt"/>  
  2. <input type="hidden" id="hid" name="hid" />  
  3. <textarea name="textarea" cols="20" rows="5" style="width: 60%"/>  

Servlet界面

[java] view plain copy print?在CODE上查看代码片派生到我的代码片
  1. Map<String,String[]> getMap = request.getParameterMap();  
  2. System.out.println(getMap);  

getMap的内容为:

[objc] view plain copy print?在CODE上查看代码片派生到我的代码片
  1. {txt=[Ljava.lang.String;@27ce06dc,  
  2. hid=[Ljava.lang.String;@7bbbca39,   
  3. textarea=[Ljava.lang.String;@7ea06d70}  

 其实,request.getParameterMap()方法也是通过前台表单中的name值进行获取的,获取到后又进行了一次封装。 之所以返回的map中的key为字符串类型的数组,是为了解决表单中有多个name值一样的项。

 记得当初为了简化重复写request.getParameter,还专门自定义了一个函数,用来将获取的表单想转化为一个map对象,当时还觉得通过转换已经相当简单了,可如今就在想当时怎么就不再方法后面加上个map字段呢? 所以,以后再工作中,遇到问题时,首先不是自己去写解决方法,而是去找有没有现成的方法。

0 0
原创粉丝点击