获取Jsp向后台发送请求获取参数的方法

public Map<String, String> getParameterMap(String[] stcd)
{
Map<String, String> map = new HashMap<String, String>();
//获取客户端提交的信息:
//1)HttpServletRequest.getParameterNames():获取所有表单信息
//2)HttpServletRequest.getParameter(key):获取指定key的信息
//3)HttpServletRequest.getParameterValues(key):表单项有多个值,用此方法
Enumeration<?> parameternames = getRequest().getParameterNames();
while (parameternames.hasMoreElements())
{
String name = (String) parameternames.nextElement();
map.put(name, trim((stcd == null ? getRequest().getParameter(name).toString() : code(getRequest().getParameter(name).toString(), stcd[0], stcd[1]))));
}
Enumeration<?> names = getRequest().getAttributeNames();
while (names.hasMoreElements())
{
String name = (String) names.nextElement();
map.put(name, trim((stcd == null ? getRequest().getAttribute(name).toString() : code(getRequest().getAttribute(name).toString(), stcd[0], stcd[1]))));
}
try
{
if (getRequest().getReader() != null)
{
String pline = getRequest().getReader().readLine();
if (StringUtils.isNotEmpty(pline))
{
String params = URLDecoder.decode(pline, "utf-8");
for (String snippet : params.split("&"))
{
String[] kv = snippet.split("=");
map.put(kv[0], trim((2 <= kv.length ? kv[1] : null)));
}
}
}
}
catch (Exception e)
{
logger.error(e.getMessage());
e.printStackTrace();

}
return map;
}

猜你喜欢

转载自lihongtai.iteye.com/blog/2114572