首頁  >  文章  >  Java  >  JavaMail API—使用Java從本機SMTP發送電子郵件

JavaMail API—使用Java從本機SMTP發送電子郵件

不言
不言原創
2019-03-15 10:51:463695瀏覽

JavaMail API支援用於傳送電子郵件的JavaMail(javax.mail)介面。 javax.mail具有發送電子郵件和SMTP,POP3和IMAP等其他郵件協定所需的所有類別。在本篇文章中,我們使用JavaMail API透過本機smtp伺服器使用Java傳送電子郵件。確保在localhost上運行smtp伺服器。

JavaMail API—使用Java從本機SMTP發送電子郵件

第1步:設定JavaMail環境

首先,我們需要下載包含javax.mail中所有類別的jar檔。從oracle官方網站下載jar(mail.jar)檔案。

現在在系統環境中設定類別路徑。 Windows使用者確保為Java安裝配置了PATH變數。

Windows:

c:> set classpath=mail.jar;.;

Linux:

# export JAVA_HOME=/opt/jdk1.8.0_05/
# export PATH=$PATH:$JAVA_HOME/bin
# export CLASSPATH=$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib/tools.jar:mail.jar:.

#第2步:寫一個發送電子郵件的Java程式

使用以下內容建立一個Java檔案sEndoJavaApI.java。在此腳本中,需要根據要求將電子郵件從變數變更為變數。

import java.util.Properties;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
 
public class SendMailJavaAPI {
 
        public static void main(String[] args) throws Exception{
 
        String to="recipient@example.com";
        String from="sender@example.com";
 
        Properties props = new Properties();
        Session session = Session.getDefaultInstance(props, null);
 
        String msgBody = "Sending email using JavaMail API...";
 
        try {
            Message msg = new MimeMessage(session);
            msg.setFrom(new InternetAddress(from, "NoReply"));
            msg.addRecipient(Message.RecipientType.TO,
                             new InternetAddress(to, "Mr. Recipient"));
            msg.setSubject("Welcome To Java Mail API");
            msg.setText(msgBody);
            Transport.send(msg);
            System.out.println("Email sent successfully...");
 
        } catch (AddressException e) {
            throw new RuntimeException(e);
        } catch (MessagingException e) {
            throw new RuntimeException(e);
        }
    }
}

第3步:執行程式以傳送電子郵件

最後,我們需要執行Java程式來傳送電子郵件。如我們所知,這發生在兩個STPE中,第一個是編譯程序,第二個是運行程序。

# javac SendMailJavaAPI.java
# java SendMailJavaAPI

這篇文章到這裡就已經全部結束了,更多其他精彩內容可以關注php中文網的其他相關欄位教學! ! !

以上是JavaMail API—使用Java從本機SMTP發送電子郵件的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn