11 回答
TA贡献25条经验 获得超45个赞
如果是页面传值过来的话,需要请求的编码跟接收和数据库的编码一致。
如果你debug发现传到后台还没接收的时候就是乱码的话
需要修改tomcat配置文件,其他发布服务器类似。
建议忘掉修改my.ini方法 实际项目数据库编码不会有问题的。
全部没问题的话,是极小的几率才会出现乱码,比如说,手机端未设置编码直接传值等
TA贡献2条经验 获得超1个赞
首先查看当前数据库编码:
mysql> use xxx
mysql> show variables like 'character_set_database';
+------------------------+--------+
| Variable_name | Value |
+------------------------+--------+
| character_set_database | latin1 |
+------------------------+--------+
上面,我们先切换到xxx数据库下面来,然后使用SQL语句:show variables like 'character_set_database'; 来查看了xxx数据库的编码。查询得到的结果是latin1编码。
下面,修改xxx数据库的编码,把它修改为你要的编码 utf8 (注意不是utf-8)。或许你的是gbk gb2312 。
mysql> alter database xxx CHARACTER SET utf8;
TA贡献11条经验 获得超1个赞
private String url = "jdbc:mysql://localhost:3306/dbname?useUnicode=true&charactorEncoding=utf-8";
在你jdbc url后面加上?useUnicode=true&charactorEncoding=utf-8 这段,用的什么编码,尾部就改成什么编码,还有你的项目编码最好也相同,新建数据库时也指定charset=utf-8,就不会乱码了
添加回答
举报