java 163邮箱验证

摘要:
步骤1:导入工具类importjava。util。属性;importjavax.mail。认证人;importjavax.mail。消息importjavax.mail。消息异常;importjavax.mail。密码认证;importjavax.mail。一场导入

第一步:引入工具类

import java.util.Properties;

import javax.mail.Authenticator;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMessage.RecipientType;

/**
 * 发送邮件的工具类
 */
public class MailUtils {

    public static void sendMail(String email, String emailMsg) throws AddressException, MessagingException {
        // 1.创建一个程序与邮件服务器会话对象 Session

        Properties props = new Properties();
        props.setProperty("mail.transport.protocol", "SMTP");  //需要开启163邮箱的这几个地方
        props.setProperty("mail.host", "smtp.163.com");
//            props.setProperty("mail.smtp.port", "465");
        props.setProperty("mail.smtp.auth", "true");// 指定验证为true

        // 创建验证器
        Authenticator auth = new Authenticator() {
            public PasswordAuthentication getPasswordAuthentication() {
                return new PasswordAuthentication("11@163.com", "11"); //指定你的客户端授权码 ,在163邮箱上进行设置
            }
        };

        Session session = Session.getInstance(props, auth);

        // 2.创建一个Message,它相当于是邮件内容
        Message message = new MimeMessage(session);

        message.setFrom(new InternetAddress("18337281624@163.com")); // 设置发送者邮箱

        message.setRecipient(RecipientType.TO, new InternetAddress(email)); // 设置发送方式与接收者

        message.setSubject("用户激活");
        // message.setText("这是一封激活邮件,请<a href='https://tool.4xseo.com/article/274603.html'>点击</a>");

        message.setContent(emailMsg, "text/html;charset=utf-8");

        // 3.创建 Transport用于将邮件发送

        Transport.send(message);
    }

    public static void main(String[] args) throws AddressException, MessagingException {
        MailUtils.sendMail("111@qq.com", "12345");
    }

}

 第二步: 开启邮箱的这几个地方

               java 163邮箱验证第1张

               

                    java 163邮箱验证第2张

                     如果你是第一会让你发送一个短信 设置客户端授权码 好像是 ,

                     你设置一个授权码     用在· 下面的这个方法上

         PasswordAuthentication("11@163.com", "11");

                      第三步:设置表单

                                  有个邮箱输入   邮箱 和激活码 的文本框

                      第四步:直接在service中调用这个方法,然后就会在你接收的邮箱中发送激活码 也就是 下面的123456

java 163邮箱验证第3张

 

                      执行结果:

                                java 163邮箱验证第4张

免责声明:文章转载自《java 163邮箱验证》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇utittest和pytest中mock的使用详细介绍为代码编写稳定的单元测试 [Go]下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

QQ一键登录功能的实现过程

QQ登录的思路: 当qq登陆成功后,QQ会给我们返回一个唯一的用户标识:openId,当用户授权QQ时,判断 if(已经有openId){ 跳转到登陆后的页面。 }else if(没有openId){ 跳转到注册页面->然后绑定->跳转到登陆后的页面...

[阮一峰]Linux 守护进程的启动方法

"守护进程"(daemon)就是一直在后台运行的进程(daemon)。 本文介绍如何将一个 Web 应用,启动为守护进程。 一、问题的由来 Web应用写好后,下一件事就是启动,让它一直在后台运行。 这并不容易。举例来说,下面是一个最简单的Node应用server.js,只有6行。 var http = require('http'); http...

基于jssip的简单封装

import {UA as Agent, WebSocketInterface as Socket, debug} from 'jssip'; import EventEmitter from "./eventEmitter"; debug('JsSIP:RTCSession:DTMF'); export default class SipClient...

CAS—认证原理

  CAS,Central Authentication Service—中央认证服务,是Yale 大学发起的一个企业级的、开源的项目。旨在为Web应用系统提供一种可靠的SSO解决方式。以下简介SSO,重点介绍CAS认证过程。 一、    SSO简单介绍  1.1   概念   SSO英文全称Single Sign On,是眼下比較流行的服务于企业业务整...

SpringBoot2.x 整合Spring-Session实现Session共享

SpringBoot2.x 整合Spring-Session实现Session共享 1.前言 发展至今,已经很少还存在单服务的应用架构,不说都使用分布式架构部署, 至少也是多点高可用服务。在多个服务器的情况下,Seession共享就是必须面对的问题了。 解决Session共享问题,大多数人的思路都是比较清晰的, 将需要共享的数据存在某个公共的服务中,如缓存...

Django:Admin,Cookie,Session

一. Admin的配置 1.Admin基础设置 admin是django强大功能之一,它能够从数据库中读取数据,呈现在页面中,进行管理。默认情况下,它的功能已经非常强大,如果你不需要复杂的功能,它已经够用,但是有时候,一些特殊的功能还需要定制,比如搜索功能,下面这一系列文章就逐步深入介绍如何定制适合自己的admin应用。 <1> 在settin...