是这样的,tomcat8以后默认编码是UTF-8. 使用get方式接收参数,中文显示正常. 但是使用POST接收参数就是乱码.需要使用
request.setCharacterEncoding("utf-8");
来编码.虽然问题是解决了.但是没明白怎么回事.请教有经验的人能否解惑.谢谢.
是这样的,tomcat8以后默认编码是UTF-8. 使用get方式接收参数,中文显示正常. 但是使用POST接收参数就是乱码.需要使用
request.setCharacterEncoding("utf-8");
来编码.虽然问题是解决了.但是没明白怎么回事.请教有经验的人能否解惑.谢谢.
楼主,现在已经很幸福了,在tomcat 8.5之前,就是设置了
request.setCharacterEncoding("utf-8");
对get请求也无效,只能使用字节流转换的方式。你就知足吧。
Tomcat 默认采用的是ISO-8859-1,所以会乱码,加上吧,要是觉得麻烦,有过滤器解决,就不用每个servlet都设置编码了。
15 回答8.4k 阅读
8 回答6.2k 阅读
1 回答4k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答3.1k 阅读
2 回答3.8k 阅读
3 回答1.7k 阅读✓ 已解决
因为大多数客户端并没有设置一个明确的编码,默认采用的是ISO-8859-1。post能够发送编码的形式很多,比如json,multifile。干脆让开发者自己设置