JavaMail實現簡單郵件發送
本文實例為大傢分享瞭JavaMail實現簡單郵件發送的具體代碼,供大傢參考,具體內容如下
簡單郵件
即純文本郵件,沒有除文字以外的其他所有文件。
傳輸協議
- SMTP協議
全稱為 Simple Mail Transfer Protocol,簡單郵件傳輸協議。它定義瞭郵件客戶端軟件和SMTP郵件服務器之間,以及兩臺SMTP郵件服務器之間的通信規則。
- POP3協議
全稱為 Post Office Protocol,郵局協議。它定義瞭郵件客戶端軟件和POP3郵件服務器的通信規則。
郵件發送原理
①SMTP郵件服務器:替用戶發送郵件和接收外面發送給本地用戶的郵件。
②POP3/IMAP郵件服務器:幫助用戶讀取SMTP郵件服務器接收進來的郵件。
③申請郵箱其實就是在郵箱的文件系統中申請一塊地址,用來存放用戶的郵件。
實現郵件發送需要使用的類
①JavaMail API(mail.jar)
②Java Activation Framework(activation.jar)
準備工作
開啟郵箱的POP3和SMTP服務,並獲取授權碼。
步驟
①準備參數
如設置郵件服務器(網易的是smtp.163.com),郵件發送協議等。
②獲取Session對象
③獲取傳輸對象transport
④登錄授權
⑤寫郵件
⑥發郵件
⑦關閉服務器資源
代碼實現
import javax.mail.*; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeMessage; import java.util.Properties; //發送簡單郵件 public class test1 { public static void main(String[] args) throws MessagingException { Properties properties=new Properties(); properties.setProperty("mail.host","smtp.163.com");//設置郵件服務器 properties.setProperty("mail.transport.protocol","smtp");//郵件發送協議 properties.setProperty("mail.smtp.auth","true");//需要驗證用戶名密碼 //使用JavaMail發送郵件的5個步驟 //1、創建定義整個應用程序所需的環境信息的 Session 對象 Session session = Session.getInstance(properties); //開啟Session的debug模式,這樣就可以查看到程序發送Email的運行狀態 session.setDebug(true); //2、通過session得到transport對象 Transport transport = session.getTransport(); //3、使用郵箱的用戶名和授權碼連上郵件服務器,發送郵件時, 發件人需要提交郵箱的用戶名和密碼給smtp服務器,用戶名和密碼都通過驗證之後才能夠正常發送郵件給收件人。 transport.connect("smtp.163.com",用戶名,授權碼); //4、創建郵件 //創建一個郵件對象 MimeMessage message=new MimeMessage(session); //指明郵件的發件人 message.setFrom(new InternetAddress(發件人郵箱)); //指明收件人 message.setRecipient(Message.RecipientType.TO,new InternetAddress(收件人郵箱)); //郵件標題 message.setSubject("簡單郵件發送"); //郵件的文本內容 message.setText("這是一封簡單的郵件"); //5、發送郵件 transport.sendMessage(message,message.getAllRecipients()); //關閉連接 transport.close(); } }
運行結果
以上就是本文的全部內容,希望對大傢的學習有所幫助,也希望大傢多多支持WalkonNet。