java遍历request.getParameterMap()中的值

Posted 彩虹の你

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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

通过打印出来的信息,很容易就发现该对象是一个字符串数组,因此我们就可以知道request.getParameterMap()方法返回的map中存储的值是数组。

我们通过一个循环来校验一下。

for (Iterator iter = map.entrySet().iterator(); iter.hasNext();) {
  Map.Entry element = (Map.Entry) iter.next();
  Object strKey = element.getKey();
  String[] strArr = (String[])element.getValue();
  System.out.println(strKey);
  for (String str : strArr) {
    System.out.println(str); // yanggb
  }
}

这个时候就发现能够正常打印出前端请求发送的参数值了。

然后我们将上面最开始的代码稍微改动一下。

Map map = request.getParameterMap();
String[] yanggbs = (String[])map.get("yanggb");
if (yanggbs.length > 0) {
    System.out.println(yanggbs[0]); // yanggb
}

这样就能正常获取到前端请求发送的参数值了。

 

"你是你自己人生的唯一负责人。"

以上是关于java遍历request.getParameterMap()中的值的主要内容,如果未能解决你的问题,请参考以下文章

JSP显示新闻

ajax请求时后端参数取值问题以及一些示例

文件的上传与下载

@RequestBody和@RequestParam区别

jsp中怎么提取redirect中参数的值

@RequestParam @RequestBody 和 @PathVariable