1 //tomcat 配置文件中进行修改 2 3 /* 4 <Connector port="8080" protocol="HTTP/1.1" 5 connectionTimeout="20000" 6 redirectPort="8443" URIEncoding='UTF-8' /> 7 */ 8 9 //设置请求参数的编码格式--对GET请求无效 10 request.setCharacterEncoding("UTF-8"); 11 /* 12 * 在Tomcat7及以下 客户端以UTF-8的编码传输数据到服务器端, 13 * 而服务器端的request对象使用的是IS08859-1这个字符编码来接收数据, 14 * 服务器和客户端沟通的编码不一致因此才会产生中文乱码的。 15 * */ 16 17 /* 18 * 解决办法:在接收到数据后,先获取request对象 19 * 以IS08859-1字符编码接收到的原始数据的字节数组, 20 * 然后通过字节数组以指定的编码构建字符串,解决乱码间题。 21 * Tomcat8的版本中GET基本就不会乱码了, 22 * 因为服务器对ur1的编码格式可以进行自动转换 23 * */ 24 //例如 25 String name = request.getParameter("name"); 26 name = new String(name.getBytes("ISO8859-1"), "UTF-8"); 27 28 //Servlet输出中文,页面出现乱码的解决办法 29 response.setContentType("text/html;charset=UTF-8"); 30 response.setCharacterEncoding("UTF-8");