Java项目-----图形验证码登陆实现

原理:

验证码在前端显示,但是是在后端生成, 将生成的验证码存入redis,待登录时,前端提交验证码,与后端生成的验证码比较.

详细解释:

图形验证码的原理(如下图代码).前端发起获取验证码的请求后,

1 后端接收请求,生成一个键key(随机的键) 然后生成一个验证码作为map的value.将key value set到HashMap(键不能重复)中,

2然后将此key,value存储到redis中,设置过期时间为5分钟.随后将map中的键值对返回到前端,注意此map有效时间是根据redis的有效时间而定.

-------html

--------js 3 前端获取到该map如下图

将后端获取到的value显示到前端,然后将key保存到form中,当点击登陆时,此时将form中的用户自己输入的验证码的值,和后端传递回来的key还有账户,密码传递到后端,后端拿到这个自己曾经传递回来的key和redis中的key进行寻找,然后将用户输入的value与redis对应的key相比较,如若成功,则成功进行下一步,进行数据库交互,比较账户密码.

写一个5分钟自动换验证码的方法

钩子函数调用即可

相关依赖

效果图

如图所示,图形验证码,将图形验证码的函数写在钩子函数中,加载页面即显示,

相关推荐
gb421528714 分钟前
java中将租户ID包装为JSQLParser的StringValue表达式对象,JSQLParser指的是?
java·开发语言·python
一朵梨花压海棠go20 分钟前
html+js实现表格本地筛选
开发语言·javascript·html·ecmascript
曾经的三心草25 分钟前
Python2-工具安装使用-anaconda-jupyter-PyCharm-Matplotlib
android·java·服务器
蒋星熠25 分钟前
Flutter跨平台工程实践与原理透视:从渲染引擎到高质产物
开发语言·python·算法·flutter·设计模式·性能优化·硬件工程
Metaphor69225 分钟前
Java 高效处理 Word 文档:查找并替换文本的全面指南
java·经验分享·word
attitude.x26 分钟前
PyTorch 动态图的灵活性与实用技巧
前端·人工智能·深度学习
β添砖java30 分钟前
CSS3核心技术
前端·css·css3
ChinaRainbowSea40 分钟前
7. LangChain4j + 记忆缓存详细说明
java·数据库·redis·后端·缓存·langchain·ai编程
stormsha40 分钟前
飞算JavaAI炫技赛电商系统商品管理模块的架构设计与实现
java·架构·鸿蒙系统
minh_coo41 分钟前
Spring框架事件驱动架构核心注解之@EventListener
java·后端·spring·架构·intellij-idea