发送激活码到邮箱激活账户

大城市里の小女人 提交于 2020-12-16 11:10:20

  开发中往往需要发送邮件给用户,提醒用户需要如何操作,如注册发送激活码,点击激活账户:

邮件工具类如下:

 

package com.ceobai.utils;

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");
        
        //设置发送邮件的服务器     *localhost需要根据实际情况更改,如163的为 smtp.163.com*
        props.setProperty("mail.host", "localhost");
        props.setProperty("mail.smtp.auth", "true");// 指定验证为true

        // 创建验证器
        Authenticator auth = new Authenticator() {
            public PasswordAuthentication getPasswordAuthentication() {
                //设置发送人的帐号和密码       *需要改的地方*
                return new PasswordAuthentication("root", "123");
            }
        };

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

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

        //设置发送者       *需要改的地方,如ceobaidu@163.com*
        message.setFrom(new InternetAddress("root@dege.com"));

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

        //设置邮件主题    *根据实际情况添加主题*
        message.setSubject("来自德哥会所的激活邮件");
        // message.setText("这是一封激活邮件,请<a href='#'>点击</a>");

        //设置邮件内容  
        message.setContent(emailMsg, "text/html;charset=utf-8");

        // 3.创建 Transport用于将邮件发送
        Transport.send(message);
    }
}

 

调用该工具类的代码:

//发送邮件(email收件人地址)(emailMsg邮件的内容)(localhost网站的域名)
   String emailMsg = "欢迎来到德哥会所,<a href='http://localhost:8089/store_v2.0/userServlet?method=active&code="+user.getCode()+"'>请点击激活</a>";
   MailUtils.sendMail(user.getEmail(), emailMsg);

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!