idea添加数据到MySQL乱码,或idea查询MySQL数据显示乱码的问题解决合集,本文有两种解决办法,都是经验啊

IDEA与MySQL中文乱码解决方案

在开发中,遇到乱码应该是最头疼的事情了吧,在你被折磨疯了时,看到这里肯定能解决你的问题,还你一个轻松好心情!!!!作为一名开发老师,下面的解决办法都是上课中遇到并成功解决的经验之谈,希望也能解决你的问题。

一、idea添加到数据库的中文乱码,查询数据库数据显示在idea也乱码。

Navicat初始化配置的问题:

我们在创建数据库链接的时候,千万千万千万千万不能把这改成65001(UTF-8)

要保持第一个选项自动自动自动自动自动

我们drop原来的表,create新的表,内容保持一致,查看效果,解决问题。

注意注意注意:

一旦我们确定问题是上文所提到的链接编码错误,别急着把编码方式改回自动!因为改回自动之后会把错误编码的汉字全部变成乱码,也就是说原来数据库中所有包括汉字的字段都会变成乱码!

所以我们在改动之前,先把表文件的数据和结构导出为SQL,这时候导出的SQL语句内的汉字仍然是正常的汉字,所以没有影响!

删除原来的数据库和表,直接用导出的SQL新建数据库和表,这样可以防止数据丢失,也节约了大量建表时间。

二、在使用idea写项目,往数据库保存中文时出现中文乱码问题。把数据库的数据查出来显示在idea中又正常。

1、检查idea自身编码方式,将idea的编码方式全部设置成utf8。

2、检查配置文件的编码,在连接数据库的配置语句后面加上

?useUnicode=true&characterEncoding=UTF-8

3、检查数据库编码,将编码方式设置成utf8。

4、检查mysql的字符集是否为utf8。

使用一下代码查询:

show variables like 'char%';

如果你的字符集编码不是utf8,则需要修改配置文件并且重启才能使字符集编码为utf8(一定要重启)。具体操作如下:

找到mysql 的配置文件(mysql5.6为my-default.ini,mysql6.0以后的是my.ini),做如下修改,主要就是添加画红框的地方,完整的配置如下: 

保存后重启,使用show variables like 'char%'; 就可以看到字符集已经修改为utf8了。 

5、如果你的是web项目的话,则需要在你的web.xml文件中加上如下配置

<filter>
    <filter-name>encodingFilter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
        <param-name>encoding</param-name>
        <param-value>UTF-8</param-value>
    </init-param>
    <init-param>
        <param-name>forceEncoding</param-name>
        <param-value>true</param-value>
    </init-param>
</filter>
<filter-mapping>
    <filter-name>encodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

6、也可能是浏览器编码问题,参考一下这篇文章:https://blog.youkuaiyun.com/u014079773/article/details/52637057 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值