使用MyBatis进行数据库的模糊查询时,查询结果为空时的解决办法

我在B站学习动力节点的2022版MyBatis课程的P45《MyBatis-完成模糊查询》时,遇到了以下问题:

在StudetMapper.xml文件中,写好模糊查询的sql语句

使用MyBatis进行数据库的模糊查询时,查询结果为空时的解决办法_第1张图片

然后在测试类中写入测试代码,注意第57行代码中是通过中文字符串"张"来进行模糊查询,可以看到,运行代码后,在控制台中什么都没有输出。

使用MyBatis进行数据库的模糊查询时,查询结果为空时的解决办法_第2张图片

于是,我通过输出testGetByName方法的日志,发现了原因:

在下面的图片中可以看到,我写的sql语句中出现了乱码,而位置正好是"张"字所在的位置,因此我意识到是字符编码的设置出现了问题。

使用MyBatis进行数据库的模糊查询时,查询结果为空时的解决办法_第3张图片

解决方案:

方案一:点击File---File Properties---File Encoding---选择UTF-8---在弹出的窗口中选择Convert即可。

使用MyBatis进行数据库的模糊查询时,查询结果为空时的解决办法_第4张图片

方案二:点击File---Settings---Editor---File Encodings,将Global Encoding、Project Encoding和Default encoding for properties files都改为UTF-8,并将Transparent native-to-ascii conversion勾上,点击Apply和OK即可。

使用MyBatis进行数据库的模糊查询时,查询结果为空时的解决办法_第5张图片

 

 

你可能感兴趣的:(mysql,数据库)