关于JAVA的WEB开发,想在页面中实现在一段时间内限制同一个IP登陆失败次数过多

想在页面中实现在一段时间内限制同一个IP登陆失败次数过多的再次登陆。最好是在servlet中实现?怎么实现请帮帮。如果不是不servlet实现也要给发表来大家参考一下。

第1个回答  推荐于2016-01-07
给出在doXX(get或者post)方法里的一点,其他自己完善。
public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException,IOException {
int resc = 6 ;//定义次数,比如六次

HttpSession sess = request.getSession(true);//获取一个session

//这里使用伪码,假设你已经有了验证是否登录失败的方法,假设这个方法名字为 validate(),返回类型为boolean,为true则为登录成功
if(validate()){
//继续你的程序流程。。
}else{//登录失败了。。。
String add = request.getRemoteAddr();//获取当前用户的IP

Integer times = (Integer) sess.getAttribute(add);

if(times == null ){//当前第一次登陆
sess.setAttribute(add, new Integer(1));//设置为登录了一次
}else{
times = times + 1;//这样做不太好,但是也有效。严谨点,你可以取出times的intValue,然后再操作
if(times >= resc){//超过次数限制。。。
//执行你需要的程序。。。
}else{//没有超过次数,继续。。。
sess.setAttribute(add,times);
}
}
}
}本回答被提问者采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网