1.解决HTML页面中的中文乱码问题
为了使HTML页面很好的支持中文,就必须在每个HTML页面的头部增加如下代码:
2.解决JSP页面中的中文乱码问题
为了使JSP页面很好地支持中文,就必须在每个JSP页面的头部增加如下代码:
1 | <%@ page contentType="text/html;charset=utf-8" language="java"%> |
3.解决Servlet响应请求获取参数乱码问题
为了使servlet很好地支持中文,必须在servlet响应请求前面增加如下代码:
1 | response.setCharacterEncoding("utf-8"); |
4.解决HTTP(get)请求 / 超链接传递中文中的中文乱码问题
在默认情况下,浏览器以“ISO-8859-1”的编码格式发送请求,如果接受到的get请求中存在乱码问题,可以对其的编码进行转码。
1 2 |
我们也可以写一个工具类。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
也可以通过修改Tomcat的server.xml文件来解决:
<Connector port = “8080”
…
URIEncoding=”utf-8″/> –>增加这项
如果你的浏览器是 ie6 或以下版本,则我们使用超链接传中文或者使用setRedirect()情况会出现乱码(当中文是奇数的时候)
解决方法是 :
Stringinfo=java.net.URLEncoder.encode(“你好吗.jpg”, “utf-8”);
<a href=”http://www.sohu.com?name=”+ info >测试</a>
response.sendRedirect(“servlet地址?username=”+info);
我们应当尽量使用post 方式提交。
5.返回浏览器显示乱码问题
在服务端是中文,在response的时候,也要考虑浏览器显示是否正确,一般我们通过
response.setContentType(“text/html;charset=utf-8”);
6.解决页面数据传输中文问题
为了使中文在各页面(组件)之间正常传递,最好的方式是采用编码过滤器来解决。
在web.xml中配置一个编码过滤器,如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | <!--定义编码过滤器--> <filter> <filter-name>encodingFilter</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> </filter> <filter-mapping> <filter-name>encodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> |
7.下载提示框中文乱码问题
补充一个知识点: 当我们下载文件的时候,可能提示框是中文乱码
String temp=java.net.URLEncoder.encode(“传奇.mp3″,”utf-8”);
response.setHeader(“Content-Disposition”,”attachment;filename=”+temp);
8.解决MySql数据库中文乱码问题
修改jdbc驱动的URL如下:
jdbc:mysql://localhost/test?user=root&password=123456&useUnicode=true&characterEncoding=utf-8
除非注明,Coder文章均为原创,转载请以链接形式标明本文地址