MySQL 中 # 和 $ 的区别
- # 和 $ 的区别:
- mybatis中使用ParameterType向sql语句传参,在sql语句中引用这些参数的时候,有两种方式:#parameterName 和 $parameterName。
- #parameterName 方式引用参数时,Mybatis会把传入的参数当成是一个字符串,自动添加双引号。
- $parameterName 方式引用参数时,不做任何处理,直接将值拼接在SQL语句中。
- # 是占位符,$ 是拼接符。
- # 可以防止SQL注入:
- 使用 # 能够防止SQL注入,$ 不能避免注入攻击。
- # 的方式引用参数,mybatis 会先对SQL语句进行预编译,然后再引用值,能够有效防止SQL注入,提高安全性。
- $ 的方式应用参数,SQL语句不进行预编译。
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
