MyBatis-Plus官网:
https://mp.baomidou.com/
#和$的区别:
#{}表示一个占位符号#{} 传入值时,sql解析时,参数是带引号的,而的区别最大在于:#{} 传入值时,sql解析时,参数是带引号的,而{}穿入值,sql解析时,参数是不带引号的。
#能够防止SQL注入,而
不
能
,
不能,
不能,一般用于传入不需要转义的参数
一般推荐使用#进行传参;能用#进不要使用
;
除
非
必
须
需
要
用
到
;除非必须需要用到
;除非必须需要用到,不需要带分号;例如想直接在 SQL 语句中插入一个不改变的字符串。比如,像 ORDER BY
ORDER BY ${columnName}
mybatis本身的说明:
${} 类似于通过替换后生成sql 语句,Statement
#{} 可以绑定变量,可以防止sql 注入攻击PreparedStatement