mybatis中"$"与"#"的区别

一般情况下,我们在开发过程中,很少会遇到使用美元符号“$”来传输变量的,这是为什么呢?

因为如果使用的是"#",则paramType会将dao层传输过来的变量在添加至mybatis中的sql里面中,添加一对双引号"",而如果使用"$"符号的话,就直接在sql等于号后面

添加变量,这样的话,就不能防范某些注入攻击

 

$:直接将变量添加至sql中

#:将变量添加至sql中之后,再会在变量两边,添加双引号

 

$:很难抵御注入攻击

#:有效的防止注入攻击

posted @ 2017-11-05 03:30  菊次郎的幻想  阅读(157)  评论(0编辑  收藏  举报

begin