您的位置:首页 > 编程语言 > Java开发

java面试1之Mybatis中#{}和${}的区别

2020-06-03 04:45 751 查看

#{}:sql语句的预处理参数,之后在sql中用?代替,使用时不需要关注数据类型,Mybatis自动实现数据类型的转换,可以防止SQL注入。占位符,用来传递参数。

${}
:sql语句的直接拼接,不能实现数据类型转换,需要自己判断数据类型。不能防止SQL注入。用于SQL拼接。
注:在SQL语句动态时,必须使用${}。因为Mybatis不会修改或转义字符串。
注:SQL注入 :是一种的数据库攻击手段。比如恶意用户在填写表单时填写Sql关键字,使数据库执行非常规代码。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: