在Tomcat8.0之前的版本,如果你要向服务器提交中文是需要转码的(如果你没有修改server.xml中的默认编码),因为8.0之前Tomcat的默认编码为ISO8859-1。
POST方式提交
request.setCharacterEncoding("utf-8"); //设置编码 String parameter=request.getParameter("name"); //取出的值不乱码GET方式提交
String paramter=request.getParameter("name"); //此时取出的值是乱码的 paramter=new String(parameter.getBytes("iso8859-1"),"utf-8"); //先使用iso8859-1解码,在用utf-8编码
而在8.0之后的版本默认编码为UTF-8(这个问题困扰了我好久),所以GET不需要处理,但是POST还是需要处理。(POST的处理和8.0之前的一样)
如果你使用的是8.0以后版本,不想换成低版本,但是想学习GET提交的编码处理,就更改一下server.xml中的配置吧。
server.xml在conf目录下。
将默认编码改为ISO8859-1(在server.xml找到Connector,并添加上URIEncoding="iso8859-1")
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" URIEncoding="iso8859-1"/>