上上周在项目里写模糊查询的时候,带中文的模糊查询怎么也查不出数据库的数据,网上查了半天也找不出问题所在,然后只有求助我的导师了。以前都记在笔记本上,今天花点时间把它总结一下,写一篇博客,主要是笔记本突然散了,就离谱
1.在RequestMapping里设置produces
//因为前端发回来的是git请求,所以我用的是GetMapping
@GetMapping(value = "/users",produces = "application/json;charset=UTF-8")
网上基本都是这样设置什么的,但是对我的情况没用
2.检查数据库的字符集是否和查询语句中的参数字符集一致
这次发现问题了,前端发回来的数据使用的是utf-8的字符集,而我的数据库则是latin1类型的,那咋办呢,没办法,要么改前端,要么改数据库,于是我重构了数据库,改了数据库的字符集
本以为完事大吉,结果还是查不出来,然后继续找问题,于是有了以下一步
3.在连接数据库的配置文件里指定字符集
我的数据库连接配置写在application.yml的,示例如

当在Spring Boot项目中遇到中文模糊查询无法匹配数据库数据的问题时,可能涉及字符集不一致。解决方法包括:1) 检查@RequestMapping的produces属性,2) 确保数据库字符集与查询参数字符集匹配,3) 在数据库连接配置文件中指定正确的字符集。通过调整这些设置,成功解决了中文查询问题。
最低0.47元/天 解锁文章
5017

被折叠的 条评论
为什么被折叠?



