java中preparedstatement为什么可以防止sql注入?不知道楼主用没有用过 select * from tab_name where name= "" name "" and
java中preparedstatement为什么可以防止sql注入?
不知道楼主用没有用过select * from tab_name where name= "" name "" and passwd="" passwd ""
把其中passwd换成 [" or "1" = "1] 这样就可以完成sql注[繁:註]入
更有可能对你的数据库表drop操作
如果使用preparedstatement的话就可以直接使用(练:yòng)预编译,PreparedStatement不允许在插[练:chā]入时改变查询的《拼音:de》逻辑结构.
举例【练:lì】
statement
select * from tab_name where name= "" name "" and passwd="" passwd ""
pa娱乐城sswd就可以换[huàn]成 ‘ or "1"="1
Statement stmt = con.createStatement()
select * from tab_name where name=? and passwd=?
pstmt.setString(2, passwd)
ResultSet rs = pstmt.executeQuery()
本文链接:http://21taiyang.com/SoccerSports/22637269.html
通用防(拼音:fáng)sql注入函数java版转载请注明出处来源