一. 前臺(tái)表單直接post或get,后臺(tái)以request.getParameterMap()或request.getParameter()的形式接收
注意:前臺(tái),springmvc過(guò)濾器,以及jsp,編譯器編碼全部以u(píng)tf-8為例
以request.getParameterMap()為例
注意:這里是一個(gè)從HttpServletRequest中獲取參數(shù)的方法,至于request則是從類似于
1
2
|
@RequestMapping("/tradePortal/ReceiveCommands") public ModelAndView receiveCommands(HttpServletRequest request, HttpServletResponse response){} |
這樣的方法中獲取
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
public static Map< String ,String> getParamters(HttpServletRequest request){ logger.info("開(kāi)始獲取請(qǐng)求參數(shù)"); 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("參數(shù)獲取完畢。參數(shù)為:"+ JSON.toJSONString(paraMap)); return paraMap; } |
以上這篇解決表單post,get到springMVC后臺(tái)亂碼的問(wèn)題就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持服務(wù)器之家。
原文鏈接:http://blog.csdn.net/Cao_Song/article/details/79005387