MySQL 写入中文乱码问题

今天搭了个Spring MVC的环境,结果发现写入MySQL的中文总是乱码。 一直以为是tomcat或者Spring的问题,

总怀疑是tomcat的URIEncoding没有生效啥的,折腾半天tomcat和spring的配置文件翻了个遍,最后发现是jdbc的url

没有带useUnicode=true和characterEncoding=UTF-8的原因,真是悲剧,都是平时不注意细节酿成的恶果。

完整的格式如下:

jdbc:mysql://localhost:3306/db_name?useUnicode=true&characterEncoding=UTF-8


总结一下:

为了确保UTF-8中文可以正确的从Client到达你的数据库,请检查:

tomcat的Connector是否赔了URIEncoding="UTF-8"  

Spring MVC是否配了CharacterEncodingFilter 

jdbc是否有useUnicode=true&characterEncoding=UTF-8


你可能感兴趣的:(MySQL 写入中文乱码问题)