首页 > 开发 > Java > 正文

解决表单post,get到springMVC后台乱码的问题

2024-07-13 10:16:20
字体:
来源:转载
供稿:网友

一. 前台表单直接post或get,后台以request.getParameterMap()或request.getParameter()的形式接收

注意:前台,springmvc过滤器,以及jsp,编译器编码全部以utf-8为例

以request.getParameterMap()为例

注意:这里是一个从HttpServletRequest中获取参数的方法,至于request则是从类似于

@RequestMapping("/tradePortal/ReceiveCommands") public ModelAndView receiveCommands(HttpServletRequest request, HttpServletResponse response){} 

这样的方法中获取

public static Map<String,String> getParamters(HttpServletRequest request){    logger.info("开始获取请求参数");    Map<?,?> paramterMap = request.getParameterMap();    Map<String ,String> paraMap = new ConcurrentHashMap<String, String>();    for (Map.Entry entry :        paramterMap.entrySet()) {      if (Array.getLength(entry.getValue())<1||StringUtil.isEmpty(((String)(Array.get(entry.getValue(),0))))){        paraMap.put((String)entry.getKey(),null);      }else {        if (request.getMethod().equalsIgnoreCase("get")){          try {            paraMap.put((String)entry.getKey(),new String(((String)(Array.get(entry.getValue(),0))).getBytes("ISO-8859-1"),"utf-8"));          } catch (UnsupportedEncodingException e) {            e.printStackTrace();          }        }else {          paraMap.put((String)entry.getKey(),(String)(Array.get(entry.getValue(),0)));        }      }    }    logger.info("参数获取完毕。参数为:"+ JSON.toJSONString(paraMap));    return paraMap;  }

以上这篇解决表单post,get到springMVC后台乱码的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持VeVb武林网。


注:相关教程知识阅读请移步到JAVA教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表