关于中文乱码的问题,首先需要了解一下什么字符集编码
参考文献:字符集编码
服务端获取浏览器数据乱码:
①对于POST请求:只要在获取请求信息之前(在调用request.getParameter或者是request.getReader等),调用request.setCharacterEncoding(“UTF-8”)即可.
②.对于GET请求:(前面的方式对于GET无效)
-
方案一:修改Tomcat的server.xml;在8080端口处加上URIEncoding=“UTF-8”
-
方案二:
当应用服务器调用getParameter方法获得字符串时,getParameter方法会去向应用服务器请求参数。应用服务器最初获得的就是发送来的以浏览器编码格式编的码,即字节数组。应用服务器会对这个数据进行URLdecode解码操作(服务器通常使用ISO-8859字符集),再把解码后的字符串响应给getParameter。
假如浏览器端使用UTF-8字符编码。编码的字节数组到了应用服务器,应用服务器再用ISO-8859进行解码,就会出现乱码。因此可以在服务端,把乱码的字符串。通过ISO-8859编码得到从浏览器到服务器传输过程中的字节数组(即浏览器给服务器发送的原始字节数组),再用UTF-8解码得到正确的字符