Idea用MAVEN执行mysql数据库查询语句,在控制台回显的中文乱码问题解决方案

中文乱码是个老生常谈的问题,中国人做程序员这点总让人琢磨不透,大家对此也应该只有恨没有爱,但是恨归恨问题还是要解决的啊。碰到这个问题我试了很多网上的解决方案。
首先排除idea的setting设置里面的file ecoding,以及font的默认字体改成支持中文的字体,再试了给maven配置的VM option设置-Dfile.encoding=UTF-8,还有就是去SqlDaoConfig里面改jdbc的配置结尾加?useUnicode=true&characterEncoding=UTF-8 都无济于事(执行数据库insert操作时有用),可以说编译器里面所有能设置utf-8的地方 我都一个一个的试了。控制台回显出来的中文还是乱码。由于之前设置都没有用,所以我试完没用后都还原成原先的设置了(这点很重要)。后来我就转手向mysql进攻,我创建表的时候有设置charset为utf8呀,按理说不应该啊。接着就输入命令show variables like ‘%char%’;查看了下mysql在数据字符集设置,可能是charset client connnect以及result结果集的编码设置不对,一看确实都是latin1网上的方法说是全部设置为utf8,设置完成后图如下
在这里插入图片描述
设置代码如下

SET character_set_client = utf8;
SET character_set_connection = utf8;
SET character_set_result = utf8;

然而这样设置后,我的idea控制台回显示结果中文还是乱码。
我就想既然是中文乱码,utf8行不通,就改成gbk试一下
然后就有了一下代码:

SET character_set_client = gbk;
SET character_set_connection = gbk;
SET character_set_result = gbk;

抱着期待的心情,回idea跑代码,一看awesome!成功显示中文了。
如果你觉得写多行set太麻烦,可以直接在mysql中打

set names gbk;

这一行的原理和上面三行原理一样。
设置完图片如下
在这里插入图片描述
我的问题是这么解决的。

猜你喜欢

转载自blog.csdn.net/qq_37225921/article/details/106363512