首先是数据库乱码问题:
1.可以先检测一下是否是数据库的问题:
可以先输入查询语句SHOW VARIABLES LIKE 'character_set_%';,查看所有的编码是否是UTF-8.
(一般初始可能为:gbk)
在路径MySQLMySQL Server 5.1My.ini下修改default-character-set=utf8和
character-set-server=utf8;
然后重新启动mysql的服务就行了(在计算机管理服务中或者dos直接操作数据库重启)
2.jsp页面上添加
<%@page pageEncoding="UTF-8" contentType="text/html; charset=UTF-8" %>
3.数据库连接语句
设置characterencoding为UTF-8 如jdbc.mysql.url=jdbc:mysql://localhost:3306/db?useUnicode=true&characterEncoding=UTF8
记得添加characterEncoding=UTF8
4.前台传值给后台乱码:
(1)首先在做项目时统一将编码格式换为UTF-8,这个开始做一定要改好
(2)在web.xml中配置过滤器
<filter>
<filter-name>CharacterEncoding</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>CharacterEncoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
(3)
tomcat中添加URIEncoding="UTF-8"
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" useBodyEncodingForURI="true" disableUploadTimeout="true" URIEncoding="UTF-8"/>
这样,我的乱码是解决了。大家可以试试