redis验证码模板

本文涉及的产品
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
简介: redis验证码模板
public class redisPhone {
    public static void main(String[] args) {
        verifyCode("1231","123");
        getRedisCode("1231","123");
    }
    //1. 生成6位验证码
    public static String getCode()
    {
        Random random=new Random();
        String code="";
        for(int i=0;i<6;i++)
        {
            code=random.nextInt(10)+code;
        }
        return code;
    }
    //2.每个手机只能每天发送三次验证码
    public static void verifyCode(String phone,String code)
    {
        //1.连接redis
        Jedis jedis = new Jedis("192.168.231.131", 6379);
        //2.发生次数key
        String countKey="VerifyCode"+phone+":count";
        String CodeKey="VerifyCode"+phone+":Code";
        String count=jedis.get(countKey);
        if(count==null)
        {
            //没有发生次数
            //设置发生第一次
            jedis.setex(countKey, 24*24*60,"1");
        }
        else if(Integer.parseInt(count)>2)
        {
            jedis.incr(countKey);
        }
        else
        {
            System.out.println("已经发生了三次,无法发送");
        }
        String vcode=getCode();
        jedis.setex(CodeKey,2*60,vcode);
        jedis.close();
    }
    //3.验证
    public static  void getRedisCode(String phone,String code)
    {
        Jedis jedis = new Jedis("192.168.231.131", 6379);
        String CodeKey="VerifyCode"+phone+":Code";
        String s = jedis.get(CodeKey);
        if(s.equals(code))
        {
            System.out.println("成功");
        }
        else {
            System.out.println("失败");
        }
    }
}
相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore &nbsp; &nbsp; ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库&nbsp;ECS 实例和一台目标数据库&nbsp;RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&amp;RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
1月前
|
前端开发 NoSQL Java
【SpringBoot】秒杀业务:redis+拦截器+自定义注解+验证码简单实现限流
【SpringBoot】秒杀业务:redis+拦截器+自定义注解+验证码简单实现限流
|
7月前
|
存储 JSON NoSQL
【Redis从头学-4】Redis中的String数据类型实战应用场景之验证码、浏览量、点赞量、Json格式存储
【Redis从头学-4】Redis中的String数据类型实战应用场景之验证码、浏览量、点赞量、Json格式存储
163 0
|
8月前
|
NoSQL Redis
Redis实现验证码发送并限制每日发送次数
1、功能 输入手机号,点击发送后随机生成六位数字码,2分钟有效 输入验证码,点击验证,返回成功或失败 每个手机号每天只能输3次
|
9月前
|
机器学习/深度学习 缓存 NoSQL
前后端分离java开发图形验证码+谷歌开源Kaptcha使用(Springboot+redis实现图形验证码校验)
前后端分离java开发图形验证码+谷歌开源Kaptcha使用(Springboot+redis实现图形验证码校验)
584 0
|
11月前
|
NoSQL Java Redis
【案例实战】SpringBoot整合Redis连接池生成图形验证码
【案例实战】SpringBoot整合Redis连接池生成图形验证码
【案例实战】SpringBoot整合Redis连接池生成图形验证码
|
11月前
|
NoSQL 安全 Java
接口自动化-图形验证码存Redis取值操作
接口自动化-图形验证码存Redis取值操作
204 0
|
NoSQL Java Redis
Redis(十六)-Jedis案例-模拟验证码发送
本次模拟验证码发送的需求有三项: 输入手机号,点击发送后随机生成6位数字验证码,2分钟有效 输入验证码,点击验证,返回成功或失败 每个手机号每天只能输入3次
79 0
|
NoSQL Java 测试技术
|
存储 NoSQL 应用服务中间件

热门文章

最新文章