一般在jsp页面中添加下面三句 基本可以解决乱码问题,注意 前后台 数据库 编码一致
<%@ page contentType="text/html;charset=utf-8" %>
<%@ page pageEncoding="utf-8"%>
<%request.setCharacterEncoding("utf-8");%>
1、如果上面三段代码添加到jsp页面的最上面,运行jsp插入到数据库中的数据仍然为乱码那么,需要检查数据库的编码格式
查看建表的字符集
show full columns from itl.user;
2、如果是如下的utf8才是正确的字符,如果是其它的格式,如latin的则需要修改。
ALTER TABLE itl.user DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
3、查看数据库的其他字符集,确保没有其他类型的格式都为utf8
show VARIABLES like 'character%';
4、修改字符集的语句
alter database itl character set utf8mb4;
总结:1.数据库的字符集改为utf8
2.jsp页面的最前面加上那三行的字符格式设置
这两步属于大招,在乱码问题上至少能解决倒90%的程度。
3.前两步如果还不得行就是改下他的服务的编码。
character_set_server | utf8 |
mysql的服务设置也改为utf8 ,对应的配置文件是my.ini,在76行的mysqld下加一行
character-set-server=utf8,然后重启mysql的服务器
重启服务: