mybatis动态SQL

用'%${name}%'可以实现模糊查询,但会放开SQL注入漏洞。
<when test="name != null and name!=''">
    AND name like '%${name }%'
</when>

最好的方式,是
Oracle可以用
<when test="name != null and name!=''">
    AND name like '%'||#{name }||'%'
</when>

MySql可以用
<when test="name != null and name!=''">
    AND name like CONCAT('%',#{name},'%')
</when>
原文地址:https://www.cnblogs.com/cocoat/p/4890622.html