Mybatis where中Like 的三种使用方式
一、
where name like '%${name}%'
这种会有sql注入的问题,需要明白在 Mybatis中 $
和 #
使用的区别。这种写法也不能加jdbcType=VARCHAR
,否则也会报错。
二、
where name like #{name,jdbcType=VARCHAR}
这种方式在一些项目中也会看到。如果没有使用如Mybatis等ORM框架,直接写sql查询就这样拼接了。
三、
where name like concat('%',#{name,jdbcType=VARCHAR},'%')
推荐使用第三种
参考:https://blog.csdn.net/weixin_43831204/article/details/108152364