第二部分,關于JavaMail
使用文檔 下載JavaMail API 之后,其中所包含的文檔非常有用,文檔存放在JavaMail所在目錄的子目錄/docs/javadocs/中。下面將介紹郵件工具中所需用到的一些組件。請參閱JavaMail文檔,以便了解更多相關信息。
使用JavaMail發送email時需要的組件
JavaMail的結構體系,使得處理email尤為簡單。下面為我們所需要的一些類。
Properties(屬性):JavaMail在創建一個會話對象時,需要用到Properties。該對象將尋找名為“mail.smtp.host”的屬性串,其屬性值是發送mail的主機。 Properties props = new Properties (); props.put("mail.smtp.host", "smtp.jspinsider.com"); Session(會話): Session對象表示JavaMail中的一個mail對話。每個基于JavaMail的工具至少需要一個session,但可以有多個session。本例中, Session對象需要知道處理郵件的SMTP服務器。創建Session 對象可以這樣進行: Session sendMailSession; sendMailSession = Session.getInstance(props, null); Transport(傳輸):郵件要么是發送出去,要么是接收進來。JavaMail 用兩個不同的對象表示這兩個動作,即Transport和Store。Transport對象用于發送信息,Store用于接收信息。在本教程中,我們需要用到Transport對象。 Transport transport; transport = sendMailSession.getTransport("smtp"); 可以使用JavaMail 的Session對象的getTransport 方法來初始化Transport 對象。傳遞的字符串參數定義了返回對象中的使用的協議。這里,我們可以看到,使用JavaMail節省了很多的時間,否則我們得自己編程序完成SMTP的全部實現過程,而JavaMail已經把這些工作預先做好了。
注意:JavaMail并不是什么都支持,目前僅支持IMAP,SMTP和POP3。除此之外,如果還需要支持其他的協議,你就需要等待JavaMail的下一版本,或者你自己構造有關協議。 Message(消息):Message對象表示要發送的實際的email消息。創建的Message 對象為MimeMessage,該對象需要知道選擇哪一個JavaMail 會話。 Message newMessage = new MimeMessage(sendMailSession); 這就完了,我們需要的就是上面介紹的這四個對象。下一步,將介紹如何把這些對象放到JSP中。
|