1. 程式人生 > 實用技巧 >狂神說Java【網站註冊傳送郵件功能實現】—— (一) 基礎知識鋪墊

狂神說Java【網站註冊傳送郵件功能實現】—— (一) 基礎知識鋪墊

電子郵件

  要在網路上實現郵件功能,必須要有專門的郵件伺服器。
  這些郵件伺服器類似於現實生活中的郵局,它主要負責接收使用者投遞過來的郵件,並把郵件投遞到郵件接收者的電子郵箱中。

  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郵件處理程式。