在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以后版本,更改一下server.xml中的配置吧。
1.到Tomcat目錄的conf中打開server.xml文件
2.查找port=8080項,在前面加上 URIEncoding="UTF-8"