关于sql注入漏洞
这个问题说白了其实很简单,
就是因为sql语句使用拼接字符串导致的
举例
String sql="SELECT * FROM userdata WHERE user="+user;
上面这条语句就存在sql注入漏洞,因为最后的use是用字符串拼接的,再看下面的写法。
String sql="SELECT * FROM userdata WHERE user=?";
上面的语句便不存在sql注入漏洞,那如何把参数写进去呢?
PreparedStatement pst = connection.prepareStatement(sql);
pst.setString(1, user);
通过PreparedStatement 的setString的方式。
sql注入漏洞就这样解决了。