HttpServletRequest获取所有参数
HttpServletRequest获取所有参数有以下2种方法:
1. request.getParameterNames()
改方法获取所有参数名称列表,得到枚举类型的参数名称,参数名称若有重复的只能得到第一个,示例如下:
private Map showParams(HttpServletRequest request) { Map map = new HashMap(); Enumeration paramNames = request.getParameterNames(); while (paramNames.hasMoreElements()) { String paramName = (String) paramNames.nextElement(); String[] paramValues = request.getParameterValues(paramName); if (paramValues.length == 1) { String paramValue = paramValues[0]; if (paramValue.length() != 0) { map.put(paramName, paramValue); } } } return map; }
2. request.getParameterMap()
该方法返回一个Map类型的值,该返回值记录着前端(如jsp页面)所提交请求中的请求参数和请求参数值的映射关系。这个返回值有个特别之处——只能读。
//获取request对象
HttpServletRequest request = ServletActionContext.getRequest();
Map<String,String[]> map=request.getParameterMap();
//遍历
for(Iterator iter=map.entrySet().iterator();iter.hasNext();){
Map.Entry element=(Map.Entry)iter.next(); //key值
Object strKey = element.getKey(); //value,数组形式
String[] value=(String[])element.getValue();
System.out.print(strKey.toString() +"=");
for(int i=0;i<value.length;i++){
System.out.print(value[i]+",");
}
System.out.println();
}
版权声明:本文为JAVASCHOOL原创文章,未经本站允许不得转载。