您的位置:首页 > 编程语言 > Java开发

javaweb如何解决中文乱码问题

2018-03-29 19:28 387 查看
1). 在jsp页面上输入中文,请求页面后不出现乱码: 保证 contentType = “text/html ; charser= utf-8”,

pageEncoding="utf-8"  charset 和 pageEncoding 的编码一致,且都支持中文。通常建议取值为 utf-8

还需保证浏览器的显示的字符编码也和请求的jsp页面的编码一致。


<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">


2). 获取中文参数值:默认参数在传输过程中使用的编码为 ISO-8859-1.

①。对于POST请求:只要在获取请求信息之前(在调用 request.getParameter 或者 request.getReader 等),

调用 request.setCharacterEncoding("utf-8") 即可。


②。对于GET请求:前面的方式对于GET无效,可以通过修改Tomcat 的 server.xml 文件的方式。

参照 http://localhost:8080/docs/config/index.html –> http 文档的 useBodyEncodingForURI属性。

为 Connector 节点添加 useBodyEncodingForURI=”true” 属性即可。

<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
useBodyEncodingForURI="true" />


然后在Eclipse中下的 Servers项目下修改tomcat下的 server.xml。即可

<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1"
redirectPort="8443" useBodyEncodingForURI="true"/>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: