明輝手游網(wǎng)中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

javamail使用完全手冊,

[摘要]前言:自己的精華的文章太少,真沒“面子”,這片努力爭取爭取吧。1,哪里是開始:初始環(huán)境,安裝好你的j2sdk和你的web服務器,也就是說你的機器應該能夠運行jsp。不能??這里不管2,安裝javamail和jafJavaMail是Sun發(fā)布的用來處理email的API。它可以方便地執(zhí)行一些常用的郵...
前言:
自己的精華的文章太少,真沒“面子”,這片努力爭取爭取吧

。

1,哪里是開始:
初始環(huán)境,安裝好你的j2sdk和你的web服務器,也就是說你的機器應該能夠運行jsp。
不能??
這里不管
2,安裝javamail和jaf
JavaMail是Sun發(fā)布的用來處理email的API。它可以方便地執(zhí)行一些常用的郵件傳輸。 支持pop3,imap,smtp.
雖然JavaMail是Sun的API之一,但它目前還沒有被加在標準的java開發(fā)工具包中(Java Development Kit),
這就意味著你在使用前必須另外下載JavaMail文件。除此以外,你還需要有Sun的JavaBeans Activation Framework (JAF)。
JavaBeans Activation Framework的運行很復雜,在這里簡單的說就是JavaMail的運行必須得依賴于它的支持
去java.sun.com下再兩個zip包(javamail和jaf的)
3,配置
兩個zip解壓到c:(這里是舉例,你的可能不同)
把javamai的mail.jar和jaf的activation.jar加入到環(huán)境變變量中
4,用來發(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ā)“了沒有
<%@ 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服務器代替上面的 < 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>
解釋解釋:
屬性對象

JavaMail需要創(chuàng)建一個格式為"mail.smtp.host"的文件用來發(fā)送信息。

Properties props = new Properties ();

props.put("mail.smtp.host", "smtp.jspinsider.com"); 對話對象

所有的基于JavaMail的程序都至少需要一個或全部的對話目標。

Session sendMailSession;

sendMailSession = Session.getInstance(props, null);

傳輸

郵件的傳輸只有送出或受到兩種狀態(tài)。JavaMail將這兩種不同狀態(tài)描述為傳輸和儲存。傳輸將送出郵件,而儲存將收取郵件。

Transport transport;

transport = sendMailSession.getTransport("smtp");

使用JavaMail能為我們節(jié)約大量的時間。JavaMail能代替所有的SMTP的工作。

注意:JavaMail并不能完全的支持所有的郵件發(fā)送收取工作。它目前僅支持IMAP、SMTP和POP3,除此以外你只有等待新的JavaMail版本或自己開發(fā)協(xié)議。

信息對象

信息對象將把你所發(fā)送的郵件真實的反映出來。

Message newMessage = new MimeMessage(sendMailSession);

這就是我們所需要的全部四個對象。下一步將是如何將對象加入到JSP中。