以前在学习mybatis时,在写案例时发现数据插入中文乱码显示问号?
于是开始分析原因
首先这还不是spring项目,只是maven项目的mybatis案例。也没用到tomcat。
eclipse编码集没错
检查数据库属性发现没有错
数据库表也没有错
建表时的语句:
表信息:
那就去看看数据库的配置文件。
先在cmd中输入mysql -u root -p 输入密码 进去之后 输入
在cmd里运行指令show variables like ‘character%’;
发现database和system确实是utf8,但是cilent和server不是。
-----------------------------------------------------------------------------------------
最后解决方法是
1.在数据库连接配置文件里的url后面加上:
?useUnicode=true&characterEncoding=utf-8
2.或者是
去找数据库的配置文件
my.ini里的57和81行,全部改成utf8
保存后重启下服务,要以管理员的身份运行cmd。
输入net stop mysql 和 net start mysql指令。
再去运行一遍代码发现没有乱码了。
最后问题就解决啦。