java防止sql注入的方法

  介绍

这篇文章主要介绍了java防止sql注入的方法,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。

sql注入是比较常见的网络攻击方式之一。它不是利用操作系统的BUG来实现攻击,而是针对程序员编程时的疏忽,被不法用户钻了sql的空子,通过sql语句,实现无帐号登录,甚至篡改数据库。下面本篇就来给大家介绍几种java防止sql注入的方法,希望对你们有所帮助。

癹ava防止sql注入的方法"

java防sql注入,最简单的办法是杜绝sql拼接. sql注入攻击能得逞是因为在原有sql语句中加入了新的逻辑,如果使用PreparedStatement来代替声明来执行sql语句,其后只是输入参数,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注入的方法内容对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,遇到问题就找,详细的解决方法等着你来学习!

java防止sql注入的方法