老师我想实现限定登录失败次数,超过指定次数就限制登录一段时间 ,请问该怎么做。

来源:6-2 综合练习---实现分析

匣中失乐

2015-11-15 12:56

我已经实现了本课的代码了,想在此基础上提升一下。

  1. 想实现限定登录失败次数,超过指定次数就限制登录一段时间 ,请问该怎么做。

  2. 想实现账号处于登录状态时,如果重新登录账号,前一账号会失效。

请各位大牛不吝赐教,谢谢,小弟在此拜谢!

写回答 关注

1回答

  • lude007
    2015-12-14 21:19:17

    一、

            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。否则,登录成功。

    二、前一账号失效,不知道你说的什么意思,是再也无法登录么。如果是,你可以选择在心注册用户时删除之前的账号。

Java Socket应用---通信是这样练成的

分享的是 Java 中的网络编程,使用Socket实现网络聊天通信

125006 学习 · 627 问题

查看课程

相似问题