有部分浏览器请求参数包含中文时,请求参数到后台会出现乱码问题。
解决方案:
//页面处理
encodeURI(encodeURI(name)) ;// JavaScript编码
为什么要连续两次调用encodeURI(String)方法呢?
是因为Java中的request.getParameter(String)方法会进行一次URI的解码过程,调用时内置的解码过程会导致乱码出现。
而URI编码两次后,request.getParameter(String)函数得到的是原信息URI编码一次的内容。
接着用java.net.URLDecoder.decode(String str,String codename)方法,将已经编码的URI 转换成原文。
import java.net.URLDecoder;
//后台处理(将请求参数进行utf-8转码)
String params = URLDecoder.decode(params, "UTF-8");