收集 解决Web应用中文乱码方案
根据不同的场景,选择合适的方法
写给自己看
JSP 中 添加
<%@ page contentType="text/html;charset=UTF-8"
language="java" pageEncoding="utf-8"
%>
HTML 中 添加
<meta charset="UTF-8">
// 上者把'Get'请求的'URL'编码为'UTF-8'
var url = encodeURI(url1);
document.location.href = "url"
编辑器 中 设置
// 项目编码格式
web.xml 中 设置
<!--Connector 标签添加URIEncoding="UTF-8" 解决Post请求-->
<filter>
<filter-name>characterEncodingFilter</filter-name>
<filter-class>
org.springframework.web.filter.CharacterEncodingFilter
</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>characterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
Controller 中 添加
// 会把 参数中的"+" 替换 成" "
URLDecoder.decode(request.getParameter("test"),"utf-8");
// 转成'UTF-8'编码字符串
new String(title.getBytes("ISO-8859-1"), "utf-8");
// 通知浏览器使用'UTF-8' 解析
response.setContentType("text/html;charset=UTF-8");
response.setCharacterEncoding("UTF-8");
response.setHeader("content-type","text/html;charset=UTF-8");
Server.xml 中 设置
<!--Connector 标签添加URIEncoding="UTF-8" 解决Get请求-->
<Connector connectionTimeout="20000"
port="8080"
protocol="HTTP/1.1"
redirectPort="8443"
URIEncoding="UTF-8"
/>
MySql连接 设置
<!-- 指定存取数据时的 编解码 格式-->
database?useUnicode=true&characterEncoding=UTF-8