JavaEE中request.getParameterMap()转普通Map

在java web项目中虽然可以通过request.getParameterMap()很轻松的获得参数Map,但得到的Map和普通Map是不一样的,是被锁定的,不能像操作常规Map那样进行put、get等操作,该方法将得到参数Map返回为可操作的普通Map

 1 /**
 2  * 从request中获得参数Map,并返回可读的Map
 3  *
 4  * @param request
 5  * @return
 6  */
 7 @SuppressWarnings("unchecked")
 8 public static Map getParameterMap(HttpServletRequest request) {
 9     // 参数Map
10     Map properties = request.getParameterMap();
11     // 返回值Map
12     Map returnMap = new HashMap();
13     Iterator entries = properties.entrySet().iterator();
14     Map.Entry entry;
15     String name = "";
16     String value = "";
17     while (entries.hasNext()) {
18         entry = (Map.Entry) entries.next();
19         name = (String) entry.getKey();
20         Object valueObj = entry.getValue();
21         if(null == valueObj){
22             value = "";
23         }else if(valueObj instanceof String[]){
24             String[] values = (String[])valueObj;
25             for(int i=0;i<values.length;i++){
26                 value = values[i] + ",";
27             }
28             value = value.substring(0, value.length()-1);
29         }else{
30             value = valueObj.toString();
31         }
32         returnMap.put(name, value);
33     }
34     return returnMap;
35 }
时间: 2024-12-19 10:22:34

JavaEE中request.getParameterMap()转普通Map的相关文章

将request.getParameterMap()转换成可操作的普通Map

在java web项目中虽然可以通过request.getParameterMap()很轻松的获得参数Map,但得到的Map和普通Map是不一样的,是被锁定的,不能像操作常规Map那样进行put.get等操作,该方法将得到参数Map返回为可操作的普通Map 标签: Java request getParameterMap Anynote 代码片段(1)[全屏查看所有代码] 1. [代码][Java]代码 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

servlet中request和response

转自:http://www.cnblogs.com/xdp-gacl/p/3798347.html 一.HttpServletRequest介绍 HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP请求头中的所有信息都封装在这个对象中,通过这个对象提供的方法,可以获得客户端请求的所有信息. 二.Request常用方法 2.1.获得客户机信息 getRequestURL方法返回客户端发出请求时的完整URL. getRequestURI方法返回请求

关于request.getParameterMap()的类型转换和数据获取

首先po上一个自己写的转换类. 1 /** 2 * @author Xfiler 3 * @described 将request.getParameterMap()转换为普通的Map的工具方法 4 * @param request 5 * @return 6 */ 7 public Map<String, String> convertMap(HttpServletRequest request) { 8 Map<String, String> returnMap = new Ha

java遍历request.getParameterMap()中的值

在开发过程中发现request对象有提供一个request.getParameterMap()方法可以获取到从前端请求发送的参数Map. 但是在使用get()方法通过key(键)去获取这个参数Map中对应的value(值)的时候,发现获取的是对象. Map map = request.getParameterMap(); System.out.println(map.get("yanggb")); // [Ljava.lang.String;@4665fc21 通过打印出来的信息,很容

JSP Servlet中Request与Response所有成员方法的研究

HttpServletRequest与HttpServletResponse作为Servlet中doGet.doPost等方法中传递的参数,承接了Http请求与响应中的大部分功能,请求的解析与响应的返回都需要靠这两个对象进行,他们中的所有方法及功能在下边总结了一下,希望能对学习Java Web开发有所帮助. 1.HttpServletRequest: /* * 记录各个request.get的值 * request.getAsyncContext();AsyncContext * 获取异步传输的

request.getParameterMap()使用方法

request.getParameterMap()的返回类型是Map类型的对象,也就是符合key-value的对应关系,但这里要注 意的是,value的类型是String[],而不是String. 得到jsp页面提交的参数很容易,但通过它可以将request中的参数和值变成一个map,以下是将得到的参数和值 打印出来,形成的map结构:map(key,value[]),即:key是String型,value是String型数组. 例如:request中的参数t1=1&t1=2&t2=3 形

request.getParameterMap获取不到数据问题

最近在做javaweb项目的过程中发现使用request.getParameterMap( )方法获取jsp页面中的表单数据的时候发现获取不到,检查了好长时间最后发现问题是在jsp页面中. request.getParameterMap( )只能获取表单中添加name属性的input文本框中的内容,而无法获取id属性的文本框内容.在这里容易忘记添加name属性 可以获取name属性 <input type="text" name="name" placehol

request.getParameterMap()使用

request.getAttribute()大家不陌生吧,通产我们都是通过这个来接收界面传过来的参数的,但是你有没想过如果接收参数比较多,比较乱的时候你还用它么,有没有其他更好的方法呢? 原本想自己封装一个map方法传值,通过key-value的方式传参与读取. 后来发现request自带了一个类似的方法可以使用,对了就是request.getParameterMap(),但是这个方法的话返回类型是Map类型的对象,也就是符合key-value的对应关系,但这里要注意的是,value的类型是St

request.getParameterMap() 也能获取动态表单的key

Map<String,String[]> map = request.getParameterMap();Set<String> keys = map.keySet(); 获取表单的namefor(String key:keys){ String[] values = request.getParameterValues(key); 获取数组型 值 因为不止单选 还有多选 干脆都用多选 for (String value:values) { System.out.println(v