1.先保证eclipse的以下配置编码格式为utf-8:
①window-preferences-General-Workspace-Text file encoding 中的other设置为utf-8
②window-preferences-General-Content Types-Text-java properties File/java Source File/javaScript Source File设置为utf-8
③window-preferences-Web-JSP Files/HTML Files设置为utf-8
以上设置都是utf-8还有乱码情况,就是tomcat的编码问题了
处理请求乱码:
第一种方式:只对post方式有效
request.setCharacterEncoding("utf-8");
如果是8.0版本的get方式没有任何操作也是不会乱码的,其他版本会乱码
如果是8.0版本以下的:
第一步:tomcat目录下的conf/server.xml文件加上URIEncoding="utf-8"
修改前内容:
<Connector port="8080" protocol="HTTP/1.1"
maxThreads="150" connectionTimeout="200000"
redirecPort="8443"/>
修改后内容:
<Connector port="8080" protocol="HTTP/1.1"
maxThreads="150" connectionTimeout="200000"
redirecPort="8443" URIEncoding="utf-8"/>
第二步:
在项目的Servers下的Tomcat/server.xml的Connector里面加入URIEncoding="utf-8"
第二种方式:对get和post都有效
//先把目标转成最原始的字节码
byte[] names = name.getBytes("iso-8859-1");
//把字节码转成utf-8的字符串
String name1=new String(names, "utf-8");