1. 程式人生 > >java傳送郵件功能[轉]

java傳送郵件功能[轉]

原文連結:https://blog.csdn.net/jjkang_/article/details/56521959 

Javamail遵循兩個協議,一個是smtp協議,另一個是pop3協議。一般情況下把處理smtp請求(使用者傳送請求)的郵件伺服器稱之為smtp伺服器。而把處理pop3(接收)請求的郵件伺服器稱之為pop3伺服器。

 

在javamail中資料有三種關係,分別為mixed,related和alternative。兩部分資料必須要設定其中的關係,mixed是沒關係的關係,比如正文和附件,二者沒有關係;related是引用關係,比如在正文中引用圖片;alternative是二者選其一。

 

javamail中幾個重要的類,MimeMessage、MimeMultipart和MimeBodyPart。

MimeMessage表示整封郵件。

MimeMultipart表示一個由多個mime訊息組成的組合mime訊息。

MimeBodyPart表示一個郵件的mime訊息。

多個MimeBodyPart物件可以封裝到MimeMultipart物件中,而多個MimeMultipart物件又可以封裝 MimeMessage物件中。

 

javamail中的中文亂碼現象:

可能出現中文的地方有主題、正文、附件名(別告訴我還有檔名,這個是自己弄的,你要弄成中文那也是作了),首先,主題的中文不會亂碼,不用考慮了;正文中的亂碼可以指定編碼;而最麻煩的要屬附件名了,這個要用到mime的工具類(MimeUtility),呼叫裡面的encodeText()方法,解決亂碼問題。