JSP页面乱码全解析

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JSP页面乱码全解析相关的知识,希望对你有一定的参考价值。

  乱码指的是中文乱码。

一.POST乱码

  由于两个页面都是用UTF-8编码,但是参数的传输默认是ISO-8859-1,这时候可以在接受参数之前

request.setCharacterEncoding("UTF-8");

二.GET乱码

  如下方式,

<a href="mainPage.jsp?userName=李四">测试Get方法(URL传参数)</a>

  浏览器地址栏和显示结果会乱码,可以获取参数后按UTF-8编码

String str= request.getParameter("userName");
String userName = new String(str.getBytes("ISO-8859-1"),"UTF-8");

  但是每次GET都这么做会很麻烦,修改Tomcat的server.xml的Connector,这个也是更改默认端口的地方,最后加入URIEncoding="UTF-8"。

   <Connector port="9999" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" URIEncoding="UTF-8"/>

  还有一种就是修改tomcat的server.xml配置文件,参照tomcat帮助文档中的/docs/config/index.html 文档的useBodyEncodingForURI 属性。为Connector 节点添加useBodyEncodingForURI="true" 属性即可。

以上是关于JSP页面乱码全解析的主要内容,如果未能解决你的问题,请参考以下文章

Jsp页面中的中文乱码问题解决

JSP页面中的中文乱码问题

JSP中文乱码问题终极解决方案(下)

怎么解决jsp页面get传值中文乱码问题

iOS 开发 post 提交数据 中文乱码 一串问号,怎么解决

jsp传递数据的乱码问题