servlet中常见中文乱码处理方式:
1、直接对需要的数据进行编码转换。
浏览器的编码格式是ISO8859-1,服务器的编码是UTF-8,服务器接收到请求之后,要进行转换才能得到正确的数据,代码:String userName = new String(userName.getBytes("iso8859-1"),"utf-8");
2、通过公共配置处理:
Post请求:在进入doPost方法后,首先对请求进行编码设置:request.setCharacterEncoding("utf-8");
get请求:在doGet方法中,先设置编码:request.setCharacterEncoding("utf-8"); 然后在tomcat 目录下,server.xml文件中,找到connector 标签,port为项目设置的端口 ,添加属性:useBodyEncodingForURI="true"
注意:第一种方法是最安全的,但是对于多个参数每一个都要进行转换;
第二种方法省事,但是对于不同的浏览器,可能存在差异,视情况而定