Java中郵件的發送工具類


package com.practice.mail;

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

public class MailUtils {

    public static void sendMail(String email, String subject, String emailMsg)
            throws AddressException, MessagingException {
        // 1.創建一個程序與郵件服務器會話對象 Session

        Properties props = new Properties();
        props.setProperty("mail.transport.protocol", "SMTP");

  //如果是其他郵箱就把qq改為相應的郵箱后綴
        props.setProperty("mail.host", "smtp.qq.com");

  // 指定驗證為true
        props.setProperty("mail.smtp.auth", "true");

        // 創建驗證器
        Authenticator auth = new Authenticator() {
            public PasswordAuthentication getPasswordAuthentication() {

    //發郵件的賬號和密碼,此處需要到QQ郵箱官網開啟SMTP,P0P3,IMAP服務,然后獲取授權碼作為第三方登錄密碼
                return new PasswordAuthentication("xxxxxxxxxx@qq.com", "vkxzfddwperibfii");
            }
        };

        //不同與request的session
        Session session = Session.getInstance(props, auth);

        // 2.創建一個Message,它相當於是郵件內容
        Message message = new MimeMessage(session);

        message.setFrom(new InternetAddress("xxxxxxxxxx@qq.com")); // 設置發送者

        message.setRecipient(RecipientType.TO, new InternetAddress(email)); // 設置發送方式與接收者

        message.setSubject(subject);
        // message.setText("這是一封激活郵件,請<a href='#'>點擊</a>");

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

        // 3.創建 Transport用於將郵件發送

        Transport.send(message);
    }
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM