欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

工具类学习-java实现邮件发送激活码

程序员文章站 2022-04-09 17:37:15
问题:用java实现服务器发送激活码到用户邮件。 步骤一:如果是个人的话,确保在本地安装邮件服务器(易邮服务器)和邮件客户端(foxmail)。 步骤二:导入jar包 mail.jar,其他的需要什么协议导什么jar。 ......

问题:用java实现服务器发送激活码到用户邮件。

步骤一:如果是个人的话,确保在本地安装邮件服务器(易邮服务器)和邮件客户端(foxmail)。

步骤二:导入jar包  mail.jar,其他的需要什么协议导什么jar。

package cn.itcast.store.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");
        
        //设置发送邮件的服务器
        //props.setproperty("mail.host", "smtp.126.com");
        //props.setproperty("mail.smtp.auth", "true");// 指定验证为true

        // 创建验证器
        authenticator auth = new authenticator() {
            public passwordauthentication getpasswordauthentication() {
                //设置发送人的帐号和密码
                return new passwordauthentication("admin", "admin@store.com");
            }
        };

        session session = session.getinstance(props, auth);

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

        //设置发送者
        message.setfrom(new internetaddress("admin@store.com"));

        //设置发送方式与接收者
        message.setrecipient(recipienttype.to, new internetaddress(email)); 

        //设置邮件主题
        message.setsubject("用户激活");
        // message.settext("这是一封激活邮件,请<a href='#'>点击</a>");

        string url="http://localhost:8080/mytomcat/userservlet?method=active&code="+emailmsg;
        string content="<h1>来自购物天堂的激活邮件!激活请点击以下链接!</h1><h3><a href='"+url+"'>"+url+"</a></h3>";
        //设置邮件内容
        message.setcontent(content, "text/html;charset=utf-8");

        // 3.创建 transport用于将邮件发送
        transport.send(message);
    }
    public static void main(string[] args) throws addressexception, messagingexception {
        mailutils.sendmail("aaa@store.com", "abcdefg");
    }
}