方法一
/**
* @功能描述: 获取从request中传递过来的参数信息
*
* @param req
*/
public static Map<String, Object> getMapsExt(HttpServletRequest req) {
Map<String, Object> paramMap = new HashMap<String, Object>();
Enumeration<String> enume = req.getParameterNames();
while (enume.hasMoreElements()) {
String key = (String) enume.nextElement();
String[] values = req.getParameterValues(key);
paramMap.put(key, values.length == 1 ? req.getParameter(key) : values);
}
return paramMap;
}
方法二
@Autowired
protected HttpServletRequest request;
/**
* @功能描述: 获取从request中传递过来的参数信息
*
* @param req
*/
public Map<String, Object> getParams() {
Map<String, Object> paramMap = new HashMap<String, Object>();
// 从HttpServletRequest中获取传递过来的数据
Map<String, String[]> map = request.getParameterMap();
// 遍历 map
for (Iterator<Map.Entry<String, String[]>> iter = map.entrySet().iterator(); iter.hasNext();) {
Map.Entry<String, String[]> element = (Map.Entry<String, String[]>) iter.next();
// 获取key值
String strKey = element.getKey();
// 获取value,默认为数组形式
String[] value = element.getValue();
// 存放到指定的map集合中
if (value.length <= 1) {
// 没有或者只有一个value值
paramMap.put(strKey, value[0]);
} else {
// 有多个value值
paramMap.put(strKey, value);
}
}
for (String key : paramMap.keySet()) {
System.out.println(key + "=" + paramMap.get(key));
}
return paramMap;
}
扩展方法
/**
* <h5>功能:获取String[]类型参数</h5>
* @param paramMaps 参数信息
* @param key 参数名
* @return 没有参数信息或转换失败返回null
*/
public String[] getStringArryParam(Map<String, Object> paramMaps, String key) {
Object ojb = paramMaps.get(key);
return null == ojb ? null : (String[]) ojb;
}
/**
* <h5>功能:获取String类型参数</h5>
* @param paramMaps 参数信息
* @param key 参数名
* @return 没有参数信息返回null
*/
public String getStringParam(Map<String, Object> paramMaps, String key) {
Object ojb = paramMaps.get(key);
return null == ojb ? null : String.valueOf(ojb);
}
/**
* <h5>功能:获取int类型参数</h5>
* @param paramMaps 参数信息
* @param key 参数名
* @return 没有参数信息返回0
*/
public int getIntParam(Map<String, Object> paramMaps, String key) {
String value = getStringParam(paramMaps, key);
try {
return null == value ? 0 : Integer.parseInt(value);
} catch (Exception e) {
return 0;
}
}
/**
* <h5>功能:获取double类型参数</h5>
* @param paramMaps 参数信息
* @param key 参数名
* @return 没有参数信息返回0.0
*/
public double getDoublePara(Map<String, Object> paramMaps, String key) {
String value = getStringParam(paramMaps, key);
try {
return null == value ? 0.0d : Double.parseDouble(value);
} catch (Exception e) {
return 0.0d;
}
}
/**
* <h5>功能:获取float类型参数</h5>
* @param paramMaps 参数信息
* @param key 参数名
* @return 没有参数信息返回0.0
*/
public float getFloatParam(Map<String, Object> paramMaps, String key) {
String value = getStringParam(paramMaps, key);
try {
return null == value ? 0f : Float.parseFloat(value);
} catch (Exception e) {
return 0.0f;
}
}
/**
* <h5>功能:获取long类型参数</h5>
* @param paramMaps 参数信息
* @param key 参数名
* @return 没有参数信息返回0
*/
public long getLongParam(Map<String, Object> paramMaps, String key) {
String value = getStringParam(paramMaps, key);
try {
return null == value ? 0L : Long.parseLong(value);
} catch (Exception e) {
return 0L;
}
}
/**
* <h5>功能:获取boolean类型参数</h5>
* @param paramMaps 参数信息
* @param key 参数名
* @return 没有参数信息或转换失败返回false
*/
public boolean getBooleanParam(Map<String, Object> paramMaps, String key) {
String value = getStringParam(paramMaps, key);
return null == value ? false : Boolean.parseBoolean(value);
}