彻底解决java向mysql插入中文出现?的乱码

一. 一壶茶,一碗面,一个bug改一天!    ໒( ◑ w ◑ )७

        今天做一个后台的时候遇到了中文乱码的bug,我心想,这个好解决啊,毕竟遇见那么多这种中文字符乱码的问题了,不用想都知道99%是字符集不一致的问题。我三下五除二就把java代码和mysql的字符集给设置好了,要是那么简单我也不至于改这么长时间,我去网上搜,大多说的都是把java代码和编译器以及mysql的字符集调成一致。然而我都弄好了,却还是不行。

错误演示:

如图,除了第一条记录是 手动在数据库插入的,其余的都是测试的,惨不忍睹。 

二. 乱码分析

经过debug发现在插入数据库之前数据都是正常显示的,所以问题一定出在数据库连接上面,那么和数据有关的都有哪些比较重要的可以设置字符集的地方呢?我苦思冥想加实践,终于得出了答案。没错,就是配置文件,我这里借助了druid连接池,那么在 druid.properties 里面设置字符集是不是就可以了呢?

乱码时的配置文件:

这里要注意一点!观察idea右下角

他的编码格式还是GBK,说明我们并没有完全改过来idea的字符集。 

三. 标准结局(我是老漫迷) ໒( ◔ ▽ ◔ )७ 

我们在配置文件里面设置字符集试试:改一下url。

url=jdbc:mysql://127.0.0.1:3306/db2?characterEncoding=UTF-8

结果 :难受啊,马飞,你怎么才来!

相信会给一部分在网上搜了一整天也没解决问题的同志一些帮助的! 

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小小的香辛料

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值