`
happyqing
  • 浏览: 3152086 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

遍历request.getParameterMap()变成普通map供mybatis使用

阅读更多

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
形成的map结构:
key=t1;value[0]=1,value[1]=2
key=t2;value[0]=3
如果直接用map.get("t1"),得到的将是:Ljava.lang.String; value只所以是数组形式,就是防止参数名有相同的
情况。

遍历Map中数据方法:

@SuppressWarnings("unchecked")
public Map<String, Object> getParamMap(HttpServletRequest request) {
	Map<String, Object> paramMap = new HashMap<String, Object>();
	Map<String, String[]> requestMap = request.getParameterMap();
	Iterator<Entry<String, String[]>> it = requestMap.entrySet().iterator();
	while (it.hasNext()) {
		Entry<String, String[]> entry = it.next();
		if(entry.getValue().length==1){
			paramMap.put(entry.getKey(), entry.getValue()[0]);
    	} else {
    		String[] values = entry.getValue();
    		String value = "";
    		for(int i=0; i<values.length; i++){
    			value = values[i] + ",";
    		}
    		value = value.substring(0, value.length()-1);
    		paramMap.put(entry.getKey(), value);
    	}
	}
	return paramMap;
}

  

其他方法

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

https://www.oschina.net/code/snippet_52437_4635

 

分享到:
评论

相关推荐

    request.getParameterMap()返回的是String []数组1

    getParameter()获得的是String类型,多个参数名相同默认获取第一个getParameterValues()获得的是数组,多个参数名相同时,值在同

    java修改请求参数

    可以动态修改表达提交参数,使之修改request.getParameterMap(),不报异常。

    java request.getParameter中文乱码解决方法

    今天跟大家分享几个解决java Web开发中,request.getParameter()获取URL中文参数乱码的解决办法,需要的朋友可以参考下

    springmybatis

    MyBatis使用简单的XML或注解用于配置和原始映射,将接口和Java的POJOs(Plan Old Java Objects,普通的Java对象)映射成数据库中的记录. orm工具的基本思想 无论是用过的hibernate,mybatis,你都可以法相他们有一个...

    根据数据库表自动产生javabean

    public class ObjectUtil { //public static Object request2Obj(HttpServletRequest ... public static Map, Object&gt; request2Map(HttpServletRequest request) { return request.getParameterMap(); } }

    window.open 函数的操作

    window.open 函数的操作 取出showModalDialog中传过来的数据对象 request.getParameterMap()相关的操作实例

    pageDate封装参数,不用实体类

    Map properties = request.getParameterMap(); Map returnMap = new HashMap(); Iterator entries = properties.entrySet().iterator(); Entry entry; String name = ""; String value = ""; while ...

    阿里云java短信验证码源码-tianjin_travel:黑马旅游网项目练习

    阿里云java短信验证码源码 黑马旅游网(web阶段...request.getParameterMap(); // 2.封装到User实体 new User(); // 3.调用service注册 userService.register(user); // 4.判断 if (getSuccess()) { // 注册成功 send

    作业getParameterMap()

    作业getParameterMap()的显示

    servlet2.4doc

    The doFilter method of the Filter is called by the container each time a request/response pair is passed through the chain due to a client request for a resource at the end of the chain. doGet...

    reqresp_demo 2.zip

    请求对象 request 和响应对象 response(5)_request 的 getParameterMap 方法详解

    Struts2属性文件详解

    对于某些Java EE服务器,不支持HttpServlet Request调用getParameterMap()方法,此时可以设置该属性值为true来解决该问题.该属性的默认值是false.对于 WebLogic、Orion和OC4J服务器,通常应该设置该属性为true. struts....

    Struts2\constant应用

    对于某些Java EE服务器,不支持HttpServlet Request调用getParameterMap()方法,此时可以设置该属性值为true来解决该问题。该属性的默认值是false。 对于WebLogic、Orion和OC4J服务器,通常应该设置该属性为true。 ...

    潇湘jsp多文件上传组件2.2

    修改的基础依赖于潇湘jsp多文件上传组件2.1。 由于最近几天正好用到上传组件,所以在网上找到了潇湘jsp多文件上传组件2.1版本,经测试,发现如下问题:页面编码为...附件中有使用说明和demo,请大家根据实际情况使用。

    j2ee中表单传值的所有方法

    j2ee利用getParameter()、getParameterValues()、getParameterMap()和getParameerNames()这些方法获得表单的传值!

Global site tag (gtag.js) - Google Analytics