PreparedStatement
作用:1.提升SQL执行性能
2.预防SQL注入问题
SQL注入:
SQL注入是同过操作输入来修改实现定义好的SQL语句,用来达到执行代码对服务器进行攻击得方法
例如:PreparedStatement其实是Statement得子类,如果用Statement得话有会一个问题,
用户名随便写:'sdafasdsad'
密码:'or' 1'='1
就会登陆进来 原因是拼接SQL
打印出来得SQL是: SELECT * FROM 表名 WHERE username='sdafasdsad' and password =''or '1'='1
密码:('or '1'='1) :第一个单引号和SQLpassword=''拼成一对了 截断了 or '1'='1 1=1永远成立 and优先级比or高一点 SQL语句中:username='sdafasdsad' and password ='' 这一段为false 然后执行or 1=1 为true 然后sql语句就是false OR true 这样就登陆进去
JDBC_PreparedStatement防止SQL注入问题详细介绍
最新推荐文章于 2022-07-25 16:42:15 发布