mybatis只能模糊查询英文不能查询中文

Posted 智云

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mybatis只能模糊查询英文不能查询中文相关的知识,希望对你有一定的参考价值。

解决方法:修改配置文件,最简单的完美修改方法,修改mysql的my.cnf文件中的字符集键值(注意配置的字段细节):

1、在[client]字段里加入default-character-set=utf8,如下:
1
[client]
2
port = 3306
3
socket = /var/lib/mysql/mysql.sock
4
default-character-set=utf8


2、在[mysqld]字段里加入character-set-server=utf8,如下:
1
[mysqld]
2
port = 3306
3
socket = /var/lib/mysql/mysql.sock
4
character-set-server=utf8


3、在[mysql]字段里加入default-character-set=utf8,如下:
1
[mysql]
2
no-auto-rehash
3
default-character-set=utf8
修改完成后,service mysql restart重启mysql服务就生效。

再一查询OK了
------------------------------------------------------------------------------------------------------------------------------
*下面的只需要修改mybatis的配置文件即可。可不用修改mysql的my.cnf文件

问题三:

数据源在配置时,编码转换格式配置出错。

解决办法:

修改mybatis配置文件中配置数据源模块:

<property name="url" value="jdbc:mysql://localhost:3306/cloth?useUnicode=true&amp;characterEncoding=UTF-8"/>

这里需要注意,一般时候,我们都习惯写成<property name="url" value="jdbc:mysql://localhost:3306/cloth?useUnicode=true&characterEncoding=UTF-8"/>,但是在XML文件中,它的编码规则决定要这么变换。

在xml文件中有以下几类字符要进行转义替换:

参考:http://m.blog.csdn.net/article/details?id=53485694

以上是关于mybatis只能模糊查询英文不能查询中文的主要内容,如果未能解决你的问题,请参考以下文章

Mybatis中模糊查询使用中文无法查询

mybatis参数date怎么模糊查询

mybatis-plus模糊查询

mybatis中的模糊查询

Mybatis中mapper.xml中的模糊查询

mybatis自定义join和模糊查询