MyBatis 中拼接字符串有两种方式。

1、 使用CONCAT 函数

SELECT * FROM user WHERE name LIKE CONCAT(CONCAT(‘%’, #{name}), ‘%’)

2、 使用${ } 代替 #{ }

因为${ }直接传入SQL,而#{ }传入的是字符串带有引号

SELECT * FROM user WHERE name LIKE ‘%${name}%’

原因:
#{}能够有效防止SQL注入,但是也有它的缺点,它会把传入的数据自动加上一个双引号,所以如果要的是数字的话,就会比较尴尬。

而${}可以直接解析出原本的数据,所以需要数值比较的话,还是要加${}。

更多推荐

mybatis字符串拼接