一些关于后台需要注意的地方。

一,在 where 中 加入 1=1

      select * from table where 1=1与select * from table 看上去时没有什么区别的,在普通的查询的时候的确没有什么区别,但是如果你的sql语句是 String sql=sql + string1 这种加上一个或几个字符串变量的时候就要注意了。这种时候很有可能会被SQL注入。 比如 select * from table where name="luck" or 1=1 如果注入了or 后面这一段代码的话那么整个查询语句就变成了无约束的了。

if(!name.equals("")){
sql=sql+"name='"+name+"'";
}

如果不写1=1那么在每一个不为空的查询条件前,都要判断有没有where字句。否走要在第一个出现的地方加上

where 1=1 的 写法是为了简化程序中对条件的检测

 

转载于:https://www.cnblogs.com/Mischief/p/5646854.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值