前台与服务器数据交互乱码问题终极解决
2015-04-10 16:51
232 查看
开发中遇到乱码问题真是一个烦。今天特来总结一下
request.setCharacterEncoding("UTF-8");
解决方法:
(1)修改tomcat配置文件server.xml,在Connector中修改URIEncoding属性,该属性默认是“ISO8859-1”
(2)不改tomcat配置,将传回来的参数重新转换编码
String data = request.getParameter("paramName");
byte[] source = data.getBytes("ISO8859-1");
data = new String(source, "UTF-8");
这样得到的data就不是乱码了。当然,如果tomcat中URIEncoding修改成了别的编码,也要把ISO8859-1换成对应的编码
1.post方式提交数据中文乱码处理
post方式提交的数据乱码问题较容易解决,一般将服务器端的编码改为和前台页面一样就行了。比如页面jsp是utf-8,那么后台就request.setCharacterEncoding("UTF-8");
2.get方式提交和link链接提交
这两种方式都是直接把参数拼在url后面传到服务器的,他们走URI解决方法:
(1)修改tomcat配置文件server.xml,在Connector中修改URIEncoding属性,该属性默认是“ISO8859-1”
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding='utf-8'/>
(2)不改tomcat配置,将传回来的参数重新转换编码
String data = request.getParameter("paramName");
byte[] source = data.getBytes("ISO8859-1");
data = new String(source, "UTF-8");
这样得到的data就不是乱码了。当然,如果tomcat中URIEncoding修改成了别的编码,也要把ISO8859-1换成对应的编码
相关文章推荐
- Extjs前台数据传到java乱码问题的解决
- 解决Android与服务器交互大容量数据问题
- 解决服务器收到的post数据出现部分乱码问题
- 解决Android与服务器交互大容量数据问题
- 解决 前台与后台数据交互问题
- 解决android studio和tomcat之间数据交互乱码问题
- 解决Android与服务器交互大容量数据问题
- 解决Android与服务器交互大容量数据问题
- 转载 解决Android与服务器交互大容量数据问题
- 解决Android与服务器交互大容量数据问题
- 解决服务器返回JSON数据中文乱码问题
- dhl:ajax无法跨域改用getJSON(解决服务器返回json数据中文为乱码的问题$.ajaxSetup({ scriptCharset: "utf-8" , contentType: "application/json; chars)
- 使用apache的TelnetClient实现java向telnet服务器发送命令并显示数据(解决乱码问题)
- 解决客户端从服务器请求数据乱码问题
- 解决Android与服务器交互大容量数据问题
- 解决Android与服务器交互大容量数据问题
- 解决Android与服务器交互大容量数据问题
- 关于客户端与服务器ajax使用json数据交互,出现中文乱码或因包含html标答而报错的问题(base64加密)
- Android 使用JSON格式与服务器交互 中文乱码问题解决
- 解决Android与服务器交互大容量数据问题