在dao层中打印传过来的参数,保证是中文。
执行Statement.executeUpdate(sql)后,数据库中的中文变成乱码。
解决方法:
- 查看数据库的各处(6处)编码:
sql>SHOW VARIABLES LIKE 'character%';
告知服务器客户端使用的编码:
sql>SET character_set_client=utf8;
告知服务器客户端结果使用的编码:
sql>SET character_set_results=utf8;
- 在mysql安装目录下修改my.ini文件:
或者character-set-server=utf8 //mysql5.5版本
default-character-set=utf8 //mysql5.1版本
- 重启mysql