老师我想实现限定登录失败次数,超过指定次数就限制登录一段时间 ,请问该怎么做。
我已经实现了本课的代码了,想在此基础上提升一下。
想实现限定登录失败次数,超过指定次数就限制登录一段时间 ,请问该怎么做。
想实现账号处于登录状态时,如果重新登录账号,前一账号会失效。
请各位大牛不吝赐教,谢谢,小弟在此拜谢!
我已经实现了本课的代码了,想在此基础上提升一下。
想实现限定登录失败次数,超过指定次数就限制登录一段时间 ,请问该怎么做。
想实现账号处于登录状态时,如果重新登录账号,前一账号会失效。
请各位大牛不吝赐教,谢谢,小弟在此拜谢!
2015-11-15
一、
1. private static final int maxError = 6; //可以写一个静态常量用来用来白表示限制的阀值.
2. private static final Map<String, Integer> failMap = new HashMap<String, Integer>();//创建一个Map<String,Integer> 类型的变量来记录用户登录失败的次数
3. private static final Map<String, Date> lockMap = new HashMap<String, Integer>(); //记录被锁定的用户。
4. 当用户登录出错次数超过阀值,给lockMap里面添加要锁定的用户和当前时间。
5. 当用户每次登录时,先检测lock中是否包含锁定的用户,如果包含,根据用户名取出Date对象,用当前时间比对一下,看是否超过你的锁定时间。如果未超过,则提示锁定。否则,下一步。
6. 此时,检测用户密码是否出错,如果是,则向failMap 中添加数据,如果出错超过阀值,讲用户添加到lockMap,并清空failMap。否则,登录成功。
二、前一账号失效,不知道你说的什么意思,是再也无法登录么。如果是,你可以选择在心注册用户时删除之前的账号。
举报