zoukankan      html  css  js  c++  java
  • 个人博客

    2021年4月26日:

    今天完成了完整的登录和注册功能,以下是我的验证QQ邮箱的代码:

    package com.atguigu.crud.utils;

    import org.springframework.stereotype.Component;

    import javax.mail.*;
    import javax.mail.internet.InternetAddress;
    import javax.mail.internet.MimeMessage;
    import java.util.Properties;

    @Component
    public class QQMailTool {

    public static void sendMail(String mail, String title, String content) throws MessagingException {
    Properties properties = new Properties();
    properties.setProperty("mail.smtp.host", "smtp.qq.com");// 发送邮箱服务器
    properties.setProperty("mail.smtp.port", "465");// 发送端口
    properties.setProperty("mail.smtp.auth", "true");// 是否开启权限控制
    properties.setProperty("mail.debug", "true");// true 打印信息到控制台
    properties.setProperty("mail.transport", "smtp");// 发送的协议是简单的邮件传输协议
    properties.setProperty("mail.smtp.ssl.enable", "true");
    // 建立两点之间的链接

    Session session = Session.getInstance(properties, new Authenticator() {
    @Override
    protected PasswordAuthentication getPasswordAuthentication() {
    return new PasswordAuthentication("18723467657@qq.com", "fgocpugbrhumcdbh");
    }
    });

    // 创建邮件对象
    Message message = new MimeMessage(session);
    // 设置发件人
    try {
    message.setFrom(new InternetAddress("18723467657@qq.com"));

    // 设置收件人
    message.setRecipient(Message.RecipientType.TO, new InternetAddress(mail));// 收件人
    // 设置主题
    message.setSubject(title);
    // 设置邮件正文 第二个参数是邮件发送的类型
    message.setContent(content, "text/html;charset=UTF-8");
    // 发送一封邮件
    Transport transport = session.getTransport();
    transport.connect("18723467657@qq.com", "fgocpugbrhumcdbh");
    Transport.send(message);

    } catch (javax.mail.AuthenticationFailedException e) {
    e.printStackTrace();
    throw e;
    } catch (javax.mail.MessagingException e) {
    e.printStackTrace();
    throw e;
    } finally {

    }
    }
    }

    生成验证码的代码:

    package com.atguigu.crud.utils;

    import java.util.Random;


    public class ValidateCodeTool {

    public static String generateCode(){
    String str="0123456789";
    StringBuilder sb=new StringBuilder(5);
    for(int i=0;i<5;i++)
    {
    char ch=str.charAt(new Random().nextInt(str.length()));
    sb.append(ch);
    }
    return sb.toString();
    }
    }

    此段代码就是用于QQ邮件的验证,发件人就是用的我的QQ邮箱进行发送,当用户第一次注册之后就会向其QQ邮箱发送一条验证码,并且要求用户在5分钟之内进行验证不然验证码就会失效并且要求重新发送一条验证码。当用户第一次登陆之后,就需要跳转到此页面进行信息的完善,然后才能进行其他的操作。

  • 相关阅读:
    WebService通过SOAP头进行身份验证
    【笔记】NIOS II spi详解
    【笔记】关于NIOS II PIO的几个问题
    【笔记】NIOS II Interval Timer Core详解
    【原创】基于NIOS II SPI的ads8321驱动
    【笔记】MATLAB一些常用函数
    【原创】解决on_chip_memory过小的问题,解决Unable to reach errno ...的问题
    【原创】基于FPGA的等精度测频方法(学习实验)
    【原创】等效采样状态机控制工程(测试通过,待完善说明书)
    【原创】基于NIOS II的ADS1256 SPI驱动
  • 原文地址:https://www.cnblogs.com/yitiaokuailedexiaojingyu/p/14756313.html
Copyright © 2011-2022 走看看