Spring Mybatis Chinese Character Empty Problem

      在测试项目的过程中有中文条件查询,但是发现通过spring mybatis竟然查询不到结果,即结果为空,需要解决这个问题。先说一下这个问题的解法:

1.在spring的数据库配置中需要使用utf8编码,即:useUnicode=true&characterEncoding=utf8

jdbc.driver.default=com.mysql.jdbc.Driver
jdbc.url.default=jdbc:mysql://xxx:3306/database?useUnicode=true&characterEncoding=utf8&useSSL=false&autoReconnect=true
jdbc.username.default=root
jdbc.password.default=1234

2.需要将数据库的character_set_server从latin1改成utf8。(通过"show variables like '%char%';"可以查到具体配置)

对于我这边的场景来说,方法2是奏效的。

那么如何修改mysql的配置:

1)修改mysql配置文件my.cnf,然后在[mysqld]下面添加配置"character-set-server=utf8"。

2)重新启动服务:service mysqld restart。

 

再深入总结一下,遇到问题如何进行拆解?

>宏观分层,如客户端问题还是服务端问题。

>再深入分析,客户端问题有可能是配置问题,代码问题;服务端问题可能是配置问题,连接访问问题等;

 

Author:忆之独秀

Email:[email protected]

注明出处:https://blog.csdn.net/lavorange/article/details/106412895

你可能感兴趣的:(Java)