我是靠谱客的博主 飞快路灯,这篇文章主要介绍java怎么防止sql注入?,现在分享给大家,希望可以做个参考。

SQL注入是比较常见的网络攻击方式之一,它不是利用操作系统的BUG来实现攻击,而是针对程序员编程时的疏忽,通过SQL语句,实现无帐号登录,甚至篡改数据库。

java后台防止sql注入方法:

1.采用预编译语句集,它内置了处理SQL注入的能力,只要使用它的setString方法传值即可:

复制代码
1
2
3
4
5
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注入

复制代码
1
2
3
4
5
6
7
8
9
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注入?的详细内容,更多请关注靠谱客其它相关文章!

最后

以上就是飞快路灯最近收集整理的关于java怎么防止sql注入?的全部内容,更多相关java怎么防止sql注入内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(109)

评论列表共有 0 条评论

立即
投稿
返回
顶部