介绍
这篇文章给大家分享的是有关java如何防止sql注入的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。
, sql注入是比较常见的网络攻击方式之一,它不是利用操作系统的BUG来实现攻击,而是针对程序员编程时的疏忽,通过sql语句,实现无帐号登录,甚至篡改数据库。
下面我们给大家介绍java后台防止sql注入的两种方法
1。采用预编译语句集,它内置了处理SQL注入的能力,只要使用它的setString方法传值即可:
字符串SQL=皊elect *从用户用户名=?和密码=?; PreparedStatement preState=conn.prepareStatement (sql); preState。setString(用户名); preState。setString(2、密码); ResultSet rs=preState.executeQuery ();
2。采用正则表达式将包含有单引号(& # 39;),分号(,)和注释符号(——)的语句给替换掉来防止SQL注入
公共静态SQL字符串(String str) { 返回str.replaceAll (“。* ((& # 39;;) + | (——) +)。*“,““); } 用户名=SQL(用户名); 密码=SQL(密码); 从用户字符串sql=皊elect *用户名=& # 39;“+用户名+“& # 39;和密码=& # 39;“+密码+“& # 39;“; 声明sta=conn.createStatement (); ResultSet rs=sta.executeQuery (sql);
感谢各位的阅读!关于java如何防止sql注入就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到吧!