zl程序教程

您现在的位置是:首页 >  后端

当前栏目

Java案例-用户注册邮箱验证将邮箱激活码存入redis功能实现

JAVARedis案例 实现 功能 验证 邮箱 存入
2023-09-14 09:01:58 时间

<–start–>
用户注册时,要求用户填写注册邮箱,然后后台向用户的注册邮箱中发送绑定邮件,并将激活码保存到redis中。
手机短信验证码因为时效期短,只需要将短信验证码存储到session中即可,session的默认有效期是30分钟,但邮箱激活码要保存24小时,所以要使用到redis。
在CustomerAction中,要实现将邮件激活码保存到redis中的功能,有以下几个要点:
① 调用MailUtils工具类发送一封激活邮件;
② 生成邮箱激活码;
③ 将邮箱激活吗保存到redis中,设置有效期为24小时。

//生成激活码
        String activecode = RandomStringUtils.randomNumeric(32);
        //调用MailUtils发送激活邮件
        String content = "尊敬的客户您好,请于24小时内,进行邮箱账户的绑定,点击下面地址完成绑定:<br/><a href='"
                + MailUtils.activeUrl + "?telephone=" + model.getTelephone()
                + "&activecode=" + activecode + "'>你我他学习吧官网邮箱绑定地址</a>";
        MailUtils.sendMail("你我他学习吧官网激活邮件", content, model.getEmail());
        return SUCCESS;

要使用spring data redis将邮箱激活码保存到redis中,有以下几个要点:
① 注入RedisTemplate
② 使用RedisTemplate模板保存邮箱激活码

//注入RedisTemplate
    @Autowired
    private RedisTemplate<String,String> redisTemplate;
//生成激活码
        String activecode = RandomStringUtils.randomNumeric(32);    
//将邮箱激活码保存到redis中
    redisTemplate.opsForValue().set(model.getTelephone(),activecode,24,TimeUnit.HOURS);

<–end–>