利用memcached缓存做登陆三次失败提示不能登陆

利用Memcached缓存登陆失败三次后十五分钟能不能登陆,哪位大神给个controller看看,尽量简化,在线等谢谢。java,框架SSM,尽量解释下怎么做的。

5个回答

memcache是key,value存储的,类似于map,知道这个,大概思路就是,把当前用户登录的用户名作为key,次数作为登陆次数,每次访问时先从缓存中去取数据,取不到就新增数据,取到数据仍错误就将访问次数加1。当大于等于3次时,记录下当前时间,直接返回提示不能登陆,15分钟后清空缓存,当然也可以设置过期时间,这样就可以勒

wxl1234579
弒灬泪 回复dingxyzk: 可以设置缓存失效时间为15分钟
接近 2 年之前 回复
dingzhukun
毅在指尖 回复弒灬泪: 十五分钟后清空缓存这一步怎么做
接近 2 年之前 回复
wxl1234579
弒灬泪 回复dingzhukun: 如果第一次整合,你可以参考一下这篇博客http://blog.csdn.net/hxpjava1/article/details/77950005前面说了memcache和map很像,也就是说是取值和存值的问题,上面分享给你的博客有个memcacheUtil工具类,那个里面的方法是你主要使用的
接近 2 年之前 回复
dingzhukun
毅在指尖 用的是memcache里的哪个方法,用户名为key,次数为vaule是把?第一次看memcache
接近 2 年之前 回复

一、安装Memcached:
1、 下载Memcached(Memcached Windows 1.4.13 32/64 英文版)文档目录下已经放置下载的文件包。附:http://www.newasp.net/soft/63735.html
2、 打开CMD(Win+R:此处需要以管理员身份打开),进入到memcached所在目录。输入memcached -d install,如果没有报错则安装成功
3、 打开服务Service.msc,找到Memcached Server,打开服务
二、Tomcat配置
1、 进入Tomcat的conf文件夹,打开content.xml文件 增加配置如下:

2、 下载lib包(此处以Tomcat8为例),并拷贝至tomcat/lib目录下
memcached-session-manager-2.1.1.jar
spymemcached-2.12.3.jar
memcached-session-manager-tc8-2.1.1.jar(ps:这个是Tomcat8使用的,如果是7,请下载memcached-session-manager-tc7-2.1.1.jar;经过测试tc8是可以在Tomcat9中使用)文档目录下放置了这3个jar,仅供参考
在Java代码中Session共享的对象类需要增加 implements Serializable

纯手工制作

图片说明

一些对应测试用的 文件,如果需要 留下邮箱

wlq199101
wlq199101 这是 memcached 的session 共享安装 。 没注意楼主是要的重复登录验证 ,请无视上面内容 (哭)
接近 2 年之前 回复

登录三次失败不能登录完全不用memcached做啊,直接在前段做不好吗?

dingzhukun
毅在指尖 前端能设置不能登陆三分钟吗?
接近 2 年之前 回复

可以考虑直接在session操作,如果项目有用到分布式再考虑第三方缓存,这个很简单啊,记录用户ID,每次错误加+1,如果正确清楚用户KEY记录的数值和ID,
例子:判断错误 添加key为用户ID 值为 错误数,第二次如果有错误数加1,如果第三次还错误,则添加冻结到多会的时间,下次先查询是否是时间还是数字就可以了。。。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!