前言: 自己的精華的文章太少,真沒(méi)“面子”,這片努力爭(zhēng)取爭(zhēng)取吧
。
1,哪里是開始: 初始環(huán)境,安裝好你的j2sdk和你的web服務(wù)器,也就是說(shuō)你的機(jī)器應(yīng)該能夠運(yùn)行jsp。 不能?? 這里不管 2,安裝javamail和jaf JavaMail是Sun發(fā)布的用來(lái)處理email的API。它可以方便地執(zhí)行一些常用的郵件傳輸。 支持pop3,imap,smtp. 雖然JavaMail是Sun的API之一,但它目前還沒(méi)有被加在標(biāo)準(zhǔn)的java開發(fā)工具包中(Java Development Kit), 這就意味著你在使用前必須另外下載JavaMail文件。除此以外,你還需要有Sun的JavaBeans Activation Framework (JAF)。 JavaBeans Activation Framework的運(yùn)行很復(fù)雜,在這里簡(jiǎn)單的說(shuō)就是JavaMail的運(yùn)行必須得依賴于它的支持 去java.sun.com下再兩個(gè)zip包(javamail和jaf的) 3,配置 兩個(gè)zip解壓到c:(這里是舉例,你的可能不同) 把javamai的mail.jar和jaf的activation.jar加入到環(huán)境變變量中 4,用來(lái)發(fā)送email的HTML源代碼 <HTML> <BODY> <FORM action="sendmail.jsp" method="post"> <TABLE align="center"> <TR> <TD width="50%"> To:<BR><INPUT name="to" size="25"> </TD> <TD width="50%"> From:<BR><INPUT name="from" size="25"> </TD> </TR> <TR> <TD colspan="2"> Subject:<BR><INPUT name="subject" size="50"> </TD> </TR> <TR> <TD colspan="2"> <P>Message:<BR><TEXTAREA name="text" rows=25 cols=85></TEXTAREA></P> </TD> </TR> </TABLE> <INPUT type="submit" name="cb_submit" value=" Send "> <INPUT type="reset" name="cb_reset" value=" Clear "> </FORM> </BODY> </HTML> 5,今天你“發(fā)“了沒(méi)有 <%@ page import=" javax.mail.*, javax.mail.internet.*, javax.activation.*,java.util.*" %> <html> <head> <TITLE>JSP meets JavaMail, what a sweet combo.</TITLE> </HEAD> <BODY> <% try{ Properties props = new Properties(); Session sendMailSession; Store store; Transport transport; sendMailSession = Session.getInstance(props, null); props.put("mail.smtp.host", "smtp.jspinsider.com"); //用你的smtp服務(wù)器代替上面的 < smtp.jspinsider.com > Message newMessage = new MimeMessage(sendMailSession); newMessage.setFrom(new InternetAddress(request.getParameter("from"))); newMessage.setRecipient(Message.RecipientType.TO, new InternetAddress(request.getParameter("to"))); newMessage.setSubject(request.getParameter("subject")); newMessage.setSentDate(new Date()); newMessage.setText(request.getParameter("text")); transport = sendMailSession.getTransport("smtp"); transport.send(newMessage); %> <P>Your mail has been sent.</P> <% } catch(MessagingException m) { out.println(m.toString()); } %> </BODY> </HTML> 解釋解釋: 屬性對(duì)象
JavaMail需要?jiǎng)?chuàng)建一個(gè)格式為"mail.smtp.host"的文件用來(lái)發(fā)送信息。
Properties props = new Properties ();
props.put("mail.smtp.host", "smtp.jspinsider.com"); 對(duì)話對(duì)象
所有的基于JavaMail的程序都至少需要一個(gè)或全部的對(duì)話目標(biāo)。
Session sendMailSession;
sendMailSession = Session.getInstance(props, null);
傳輸
郵件的傳輸只有送出或受到兩種狀態(tài)。JavaMail將這兩種不同狀態(tài)描述為傳輸和儲(chǔ)存。傳輸將送出郵件,而儲(chǔ)存將收取郵件。
Transport transport;
transport = sendMailSession.getTransport("smtp");
使用JavaMail能為我們節(jié)約大量的時(shí)間。JavaMail能代替所有的SMTP的工作。
注意:JavaMail并不能完全的支持所有的郵件發(fā)送收取工作。它目前僅支持IMAP、SMTP和POP3,除此以外你只有等待新的JavaMail版本或自己開發(fā)協(xié)議。
信息對(duì)象
信息對(duì)象將把你所發(fā)送的郵件真實(shí)的反映出來(lái)。
Message newMessage = new MimeMessage(sendMailSession);
這就是我們所需要的全部四個(gè)對(duì)象。下一步將是如何將對(duì)象加入到JSP中。
|
溫馨提示:喜歡本站的話,請(qǐng)收藏一下本站!