電子郵件
要在網絡上實現郵件功能,必須要有專門的郵件服務器。
這些郵件服務器類似於現實生活中的郵局,它主要負責接收用戶投遞過來的郵件,並把郵件投遞到郵件接收者的電子郵箱中。
SMTP服務器地址:一般是 smtp.xxx.com,比如163郵箱是smtp.163.com,qq郵箱是smtp.qq.com。
電子郵箱(E-Mail地址)的獲得需要在郵件服務器上進行申請。比如我們要使用QQ郵箱,就需要開通郵箱功能;
傳輸協議
-
SMTP協議
發送郵件:
我們通常把處理用戶smtp請求(郵件發送請求)的服務器稱之為SMTP服務器(郵件發送服務器)。 -
POP3協議
接收郵件:
我們通常把處理用戶pop3請求(郵件接收請求)的服務器稱之為POP3服務器(郵件接收服務器)。
郵件收發原理
1、郵件服務器
①SMTP郵件服務器:替用戶發送郵件和接收外面發送給本地用戶的郵件
②POP3/IMAP郵件服務器:幫助用戶讀取SMTP郵件服務器接收進來的郵件
2、郵件傳輸協議
①電子郵件需要在郵件客戶端和郵件服務器之間,以及兩個郵件服務器之間進行郵件傳遞,那就必須要遵守一定的規則,這個規則就是郵件傳輸協議
②SMTP協議:全稱為 Simple Mail Transfer Protocol,簡單郵件傳輸協議。它定義了郵件客戶端軟件和SMTP郵件服務器之間,以及兩台SMTP郵件服務器之間的通信規則
③POP3協議:全稱為 Post Office Protocol,郵局協議。它定義了郵件客戶端軟件和POP3郵件服務器的通信規則
④IMAP協議:全稱為 Internet Message Access Protocol,Internet消息訪問協議,它是對POP3協議的一種擴展,也是定義了郵件客戶端軟件和IMAP郵件服務器的通信規則
我們說所有的郵件服務器和郵件客戶端軟件程序都是基於上面的協議編寫的
引自:https://www.jb51.net/article/125852.htm
使用Java實現郵件發送需要使用到的類
概述
我們將用代碼完成郵件的發送。這在實際項目中應用的非常廣泛,比如注冊需要發送郵件進行賬號激活,再比如OA項目中利用郵件進行任務提醒等等。
使用Java發送 E-mail 十分簡單,但是首先你應該准備 JavaMail API 和Java Activation Framework 。
得到兩個jar包:
1.mail.jar
2.activation.jar
JavaMail 是sun公司(現以被甲骨文收購)為方便Java開發人員在應用程序中實現郵件發送和接收功能而提供的一套標准開發包,它支持一些常用的郵件協議,如前面所講的SMTP,POP3,IMAP,還有MIME等。我們在使用JavaMail API 編寫郵件時,無須考慮郵件的底層實現細節,只要調用JavaMail 開發包中相應的API類就可以了。
我們可以先嘗試發送一封簡單的郵件,確保電腦可以連接網絡。
- 創建包含郵件服務器的網絡連接信息的Session對象。
- 創建代表郵件內容的Message對象
- 創建Transport對象,連接服務器,發送Message,關閉連接
主要有四個核心類,我們在編寫程序時,記住這四個核心類,就很容易編寫出Java郵件處理程序。