使用mybatisplus 进行like 查询查不出来值 在数据库却能查出来值得解决方法
JsqlParserCountOptimize sql=SELECT id,name,intro,career,level,avatar,sort,is_deleted,gmt_create,gmt_modified FROM edu_teacher
WHERE name LIKE ? AND level = ? ORDER BY gmt_create DESC
> Preparing: SELECT COUNT(1) FROM edu_teacher WHERE name LIKE ? AND level = ?
> Parameters: %李%(String), 1(Integer)
< Columns: COUNT(1)
< Row: 0
==> Preparing: SELECT id,name,intro,career,level,avatar,sort,is_deleted,gmt_create,gmt_modified FROM edu_teacher WHERE name LIKE ? AND level = ? ORDER BY gmt_create DESC
> Parameters: %李%(String), 1(Integer)
< Total: 0
我们复制它打印sql语句 到数据库进行查询
可以发现它是有值的,这个问题困扰我挺久的
后来发现是因为配置文件的数据库连接忘记加编码格式了 数据库使用的是utf-8所以
spring.datasource.url=jdbc:mysql://localhost:3306/gulixueyuan?serverTimezone=GMT%2B8&characterEncoding=UTF-8
加上&characterEncoding=UTF-8这个就行了
注意这里加的编码要和你数据库使用的编码一样即可