1.前后端编码不一致
2.浏览器默认使用UTF-8码表进行编码 ,Servlet使用ISO-8859-1码表进行编码
3.传输和接收方编码不一致导致乱码的产生
post请求
在servlet的请求方式中设置
//给请求中的参数设置编码格式
request.setCharacterEncoding("UTF-8");
get请求
在Tomcat根目录/conf/server.xml中设置编码格式
<Connector URIEncoding="UTF-8" port="8080" protocol="HTTP/1.1"
connectionTimeout="20000" redirectPort="8443"
/>
那么在启动服务器的时候就会读取到URIEncoding的属性配置,然后再调用自己的一个setURIEncoding方法完成设置,形参的值为我们设置的UTF-8
protected String URIEncoding = null;
public void setURIEncoding(String URIEncoding) {
this.URIEncoding = URIEncoding;
setProperty("URIEncoding", URIEncoding);
}
在servlet的请求方式中设置
//设置响应内容的编码格式
response.setContentType("text/html;charset=UTF-8");
在servlet的请求方式中设置
response.sendRedirect(URLEncoder.encode);
以上就是关于“Servlet中文乱码处理的方法”介绍,大家如果对此比较感兴趣,想了解更多相关知识,可以关注一下极悦的Java极悦在线学习,里面的课程内容从入门到精通,细致全面,很适合没有基础的小伙伴学习,希望对大家能够有所帮助。
你适合学Java吗?4大专业测评方法
代码逻辑 吸收能力 技术学习能力 综合素质
先测评确定适合在学习