mybatis为何能防止sql注入

Posted L.ZH__

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mybatis为何能防止sql注入相关的知识,希望对你有一定的参考价值。

1.mybatis为何能防止sql注入?

   mybatis可以通过#{xxx}的方式进行预编译sql语句($(xxx)只是将字符串替换,没有预编译)

2.预编译为何能防止sql注入?

   一条sql语句的执行需要经过语义解析,制定执行计划,执行并返回结果

   预编译后的语句将命令和参数分离,以?代替参数,在编译时直接进行执行计划,不会再进行语义分析,参数输入后替换?,直接查询输入的字符串,而不会再分析语句语法

3.如何进行sql注入

   用and、or、like、“”、‘’、1=1、<>、等特殊符号,以及猜表名、猜字段名

4.如何预防sql注入

   提高数据库权限管理,只有管理员能进行敏感操作

   过滤用户输入

   使用专业的漏洞扫描工具

   参数化sql语句

以上是关于mybatis为何能防止sql注入的主要内容,如果未能解决你的问题,请参考以下文章

MyBatis怎么防止SQL注入

MyBatis如何防止SQL注入

mybatis如何防止sql注入

防止sql注入的方法都有哪些

mybatis是如何防止sql注入?

mybatis防止sql注入