菜鸟提问:对于JDBC模糊查询时候.你们是怎么防止SQL注入的.
时间:2011-08-25
来源:互联网
RT....
作者: NobodyCanHelpMe 发布时间: 2011-08-25
作者: NobodyCanHelpMe 发布时间: 2011-08-25
作者: forhd 发布时间: 2011-08-25
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();
...
第二种是采用正则表达式将包含有 单引号('),分号(;) 和 注释符号(--)的语句给替换掉来防止SQL注入
public static String TransactSQLInjection(String str)
{
return str.replaceAll(".*([';]+|(--)+).*", " ");
}
userName=TransactSQLInjection(userName);
password=TransactSQLInjection(password);
String sql="select * from users where username='"+userName+"' and password='"+password+"' "
作者: huangchenliang 发布时间: 2011-08-25
将条件set进语句中。
作者: huxiweng 发布时间: 2011-08-25
作者: h932075062 发布时间: 2011-08-25
作者: walkman_22 发布时间: 2011-08-25
后台预编译
作者: zn85600301 发布时间: 2011-08-25
作者: x19881216 发布时间: 2011-08-25
作者: lianyue 发布时间: 2011-08-25
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28