我是 JavaEE 的新手,并试图通过检查数据库来学习制作一个简单的登录页面。这是代码示例:
ResultSet result=null;
Statement s = (Statement) con.createStatement();
result=s.executeQuery("select username from Table where ID="+id and " password="+password);
它应该容易受到 SQL 注入的攻击,对吧?我会通过在 ASP.NET 中使用参数化查询来做到这一点,如下所示:
SqlConnection con = new SqlConnection();
SqlCommand cmd=new SqlCommand("select username from Table where ID=@id and password=@password",con);
cmd.Parameters.AddWithValue("@id", id);
cmd.Parameters.AddWithValue("@password", password);
有没有办法像这样在java中使用参数化查询?任何人都可以使用参数化形式的查询来避免 SQL 注入吗?
谢谢