最新消息:XAMPP默认安装之后是很不安全的,我们只需要点击左方菜单的 "安全"选项,按照向导操作即可完成安全设置。

大厂面试题:在MyBatis中$和#有什么区别

XAMPP新闻 admin 97浏览 0评论

一、得分点 

使用传参方式MyBatis创建SQL的不同,安全和效率问题 

二、标准回答 

使用$设置参数时,MyBatis会创建普通的SQL语句,然后在执行SQL 语句时将参数拼入SQL,而使用#设置参数时,MyBatis会创建预编译的SQL语句,然后在执行SQL时MyBatis会为预编译SQL中的占位符赋值。

预编译的SQL语句执行效率高,并且可以防止注入攻击,效率和安全性都大大优于前者,但在解决一些特殊问题,如在一些根据不同的条件产生不同的动态列中,我们要传递SQL的列名,根据某些列进行排序,或者传递列名给SQL就只能使用$了。

转载请注明:XAMPP中文组官网 » 大厂面试题:在MyBatis中$和#有什么区别

您必须 登录 才能发表评论!