下面我们给人人引见java背景防备sql注入的两种要领
1.采纳预编译语句集,它内置了处置惩罚SQL注入的才能,只需使用它的setString要领传值即可:
String sql= "select * from users where username=? and password=?; PreparedStatement preState = conn.prepareStatement(sql); preState.setString(1, userName); preState.setString(2, password); ResultSet rs = preState.executeQuery();
2.采纳正则表达式将包括有 单引号('),分号(;) 和 解释标记(--)的语句给替换掉来防备SQL注入
public static String SQL(String str) { return str.replaceAll(".*([';]+|(--)+).*", " "); } userName=SQL(userName); password=SQL(password); String sql="select * from users where username='"+userName+"' and password='"+password+"' " Statement sta = conn.createStatement(); ResultSet rs = sta.executeQuery(sql);
相干引荐:《Java教程》
以上就是java怎样防备sql注入?的细致内容,更多请关注ki4网别的相干文章!