JavaMail工具类

import com.sun.xml.internal.messaging.saaj.packaging.mime.MessagingException;

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

public class MailUtils {
    //邮件发送协议
    private final static String PROTOCOL = "smtp";
    //SMTP邮件服务器
    private final static String HOST = "smtp.qq.com";
    //是否要求身份验证
    private final static String IS_AUTH = "true";
     // 是否启用调试模式(启用调试模式可打印客户 端与服务器交互过程时一问一答的响应消息)
    private final static String IS_ENABLED_DEBUG_MOD = "true";
    /**
    *      
    * @param mailAddress 收件人地址     
    * @param mailMsg     邮件正文     
    * @throws MessagingException      
    * @throws AddressException
    */ 
    public static void sendMail(String mailAddress, String mailMsg) throws MessagingException {
        // -- 1.创建一个Properties对象.里面 封装基本协议和数据
        Properties props = new Properties();
        // -- 设置邮件的发送协议 
        props.setProperty("mail.transport.protocol", PROTOCOL);
        // -- 设置发送邮件的服务器地址 
        props.setProperty("mail.smtp.host", HOST);
        // -- 设置发送邮件需要验证 
        props.setProperty("mail.smtp.auth", IS_AUTH);
        props.setProperty("mail.debug", IS_ENABLED_DEBUG_MOD);
        //-- 提供验证器
        Authenticator auth = new Authenticator() {
            @Override
            protected PasswordAuthentication getPasswordAuthentication() {
                // TODO Auto-generated method stub
                return new PasswordAuthentication("这里输入邮箱", "这里输入邮箱临时密码");
            }
        };
        //-- 开启和服务器的会话 
        Session session = Session.getDefaultInstance(props, auth);
        //-- 创建消息对象.一个Message对象就 是一封邮件的内容
        Message msg = new MimeMessage(session);
        //-- 设置邮件的发送者
        msg.setFrom(new InternetAddress("和auth里输入的邮箱要一致"));
        //-- 设置邮件的发送方式和接受者
        msg.setRecipient(RecipientType.TO, new InternetAddress(mailAddress));
        //设置邮件的主题
        msg.setSubject("发送邮件测试");
        //设置邮件的正文
        String url = "http://localhost:8080/web_war_exploded/UserActiveServlet?activeCode=" + mailMsg;
        String content = "

来自小米的用 户激活邮件,激活请点击下面的超链接

" + url + ""; msg.setContent(content, "text/html;charset=utf-8"); //-- 创建Transport用于发送邮件 Transport.send(msg); } }

java原生 发送邮件工具类

你可能感兴趣的:(JavaMail工具类)