Java框架之Mybatis中占位符 # 和 $ 的区别是什么?

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/baidu_34122324/article/details/85135211

占位符 # 和 $ 的区别

  1. /# 符号存在预编译的过程,对问号赋值,防止 SQL 注入。它将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号

  2. /$ 没有预编译过程,将传入的数据直接显示生成 SQL 中

  3. /$ 符号是直译的方式,一般用在 order by S{列名} 语句中

**总结:**使用 /$ 占位符可能会导致SQL注入攻击,能用 #/ 号就不要用 $ 符号

猜你喜欢

转载自blog.csdn.net/baidu_34122324/article/details/85135211