六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

在JSP中使用JavaMail

[摘要]你希望在jsp中建立一個(gè)郵件發(fā)送收取工具嗎?下面將介紹的就是在jsp中建立一個(gè)郵件發(fā)送收取工具。在這篇文章中你可以了解到JavaMail API的一些要點(diǎn)以及如何在JSP中使用它。本文中還包括了在JSP中使用JavaMail的實(shí)例。JavaMail是JSP應(yīng)用軟件中相當(dāng)強(qiáng)大的API。   閱讀這篇...
  你希望在jsp中建立一個(gè)郵件發(fā)送收取工具嗎?下面將介紹的就是在jsp中建立一個(gè)郵件發(fā)送收取工具。在這篇文章中你可以了解到JavaMail API的一些要點(diǎn)以及如何在JSP中使用它。本文中還包括了在JSP中使用JavaMail的實(shí)例。JavaMail是JSP應(yīng)用軟件中相當(dāng)強(qiáng)大的API。

  閱讀這篇文章需要對(duì)
JSP、JavaBeans和JavaMail有一定的初步了解。當(dāng)然,有關(guān)于JavaMail的知識(shí)你可以通過閱讀這篇文章來獲得。如果你對(duì)于以上三項(xiàng)一無所知,但你所使用的服務(wù)器支持JSP和JavaMail的話,你可以僅僅通過復(fù)制/粘貼來使用它們。

  什么是JavaMail

  
JavaMail是Sun發(fā)布的用來處理email的API。它可以方便地執(zhí)行一些常用的郵件傳輸。

  雖然
JavaMail是Sun的API之一,但它目前還沒有被加在標(biāo)準(zhǔn)的java開發(fā)工具包中(Java Development Kit),這就意味著你在使用前必須另外下載JavaMail文件。除此以外,你還需要有Sun的JavaBeans Activation Framework (JAF)。JavaBeans Activation Framework的運(yùn)行很復(fù)雜,在這里簡(jiǎn)單的說就是JavaMail的運(yùn)行必須得依賴于它的支持。在Windows 2000下使用需要指定這些文件的路徑,在其它的操作系統(tǒng)上也類似。

  接下來要講解的是這篇指南的最難理解的部分。

  這篇指南包括三部分:HTML表格、關(guān)于
JavaMail、JavaMail和JSP的結(jié)合。

  第一部分:HTML表格

  第一部分提供了一個(gè)最基本的基于HTML的email發(fā)送收取程序的例子。第二部分則講述
JavaMail的工作原理。第三部分則介紹將JavaMail加入JSP,創(chuàng)建一個(gè)基本的email發(fā)送收取程序。

  劃分組件

  
JSP最重要的特性是能將整個(gè)網(wǎng)頁劃分成一些細(xì)小的組件。這里使用的組件包括:

  ●一個(gè)用來將email的信息發(fā)送給
JSP的HTML表格;

  ●一個(gè)
JSP頁面用來處理和發(fā)送信件。

  第一步,就是創(chuàng)建一個(gè)HTML表格用來給
JSP頁面發(fā)送信息。你可以將以下的HTML代碼復(fù)制到你的電腦上:

  用來發(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">
Message:<BR><TEXTAREA name="text" rows=25 cols=85></TEXTAREA>
</TD>
</TR>
</TABLE>
<INPUT type="submit" name="cb_submit" value=" Send ">
<INPUT type="reset" name="cb_reset" value=" Clear ">
</FORM>
</BODY>
</HTML>

  以上這段程序?qū)?chuàng)建一個(gè)包含email基本信息(例如:收件地址、發(fā)送地址、主題和內(nèi)容)的文件。當(dāng)然你可以根據(jù)你自己的需要來決定這個(gè)文件包含那些信息。

  這個(gè)HTML文件的使用有兩點(diǎn)要求:第一點(diǎn)是生成的文件必須發(fā)送給接下來將介紹的程序使用。在這個(gè)例子中就是sendmail.jsp,但在你使用時(shí),必須用這個(gè)文件在系統(tǒng)里的URL來代替它;第二點(diǎn)是必須有空間來允許用戶發(fā)送email。

  第二部分:關(guān)于JavaMail

  文檔的使用

  下載的
JavaMail API中帶的文檔是很有用的。你可以在JavaMail下的/docs/javadocs/index.html找到它。第二部分主要將分析郵件程序的組件。你可以通過閱讀文檔來獲得更多這方面的信息。

  組件發(fā)送郵件需要使用
JavaMail,它使對(duì)郵件的操作變得簡(jiǎn)單易用。

  屬性對(duì)象

  
JavaMail需要?jiǎng)?chuàng)建一個(gè)格式為"mail.smtp.host"的文件用來發(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í)的反映出來。

Message newMessage = new MimeMessage(sendMailSession);

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

  第三部分:JavaMail和JSP的結(jié)合

  創(chuàng)建
JSP

  下面我們將開始將他們結(jié)合在一起。最重要的一點(diǎn)是要確認(rèn)根據(jù)頁面指示分類。還要記得在郵件上標(biāo)注java.util.date。

<%@ page
import= " javax.mail.*, javax.mail.internet.*, javax.activation.*, java.util.*"
%>

  其次,創(chuàng)建郵件發(fā)送的確認(rèn)信息。確認(rèn)信息可以是任意的,一般常用"你的郵件已經(jīng)發(fā)送出去了(Your mail has been sent)。"

  信息是如何創(chuàng)建和發(fā)送的

  我們?cè)诘诙糠掷镆呀?jīng)討論過信息對(duì)象的創(chuàng)建。我們下面將對(duì)信息進(jìn)行操作。這就和設(shè)置信息對(duì)象的屬性一樣簡(jiǎn)單。你可以通過下面的程序來實(shí)現(xiàn)這項(xiàng)操作。

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"));

  現(xiàn)在將開始發(fā)送信息。通過JavaMail來實(shí)現(xiàn)它非常簡(jiǎn)單。

transport.send(newMessage);

  將所有的組件結(jié)合在一起

  現(xiàn)在所有的組件都已經(jīng)齊全了。現(xiàn)在將它們都放在
JSP里面。要注意每一個(gè)錯(cuò)誤信息,并將它反饋給用戶。代碼如下,你可以通過復(fù)制它們直接使用:

Sample JSP email Utility Using JavaMail
<%@ 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");
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>




主站蜘蛛池模板: 青青青国产在线手机免费观看 | 亚洲国产成人va在线观看网址 | 日韩 欧美 亚洲 | 青青草国产免费久久久下载 | 午夜三级福利 | 青青青视频免费观看 | 青草网址 | 伊人亚洲综合网 | 亚洲欧美一区二区三区不卡 | 青草伊伊| 热久久国产欧美一区二区精品 | 色花堂国产精品第二页 | 亚洲免费三级 | 中文字幕欧美日韩在线不卡 | 亚洲精品亚洲人成在线 | 主播国产| 欧美一区二区不卡视频 | 亚洲国产99在线精品一区二区 | 欧美无专区| 欧美在线视频a | 亚洲精品另类 | 色羞羞| 天堂影院在线观看 | 青青青手机视频 | 色天使久久综合给合久久97色 | 日本大片在线看 | 青娱乐在线观看 | 日本免费v片一二三区 | 欧美在线观看一区 | 一级黄色片免费的 | 日本一本在线播放 | 日本免费一区二区三区a区 日本免费一二三区 | 日本一区二区三区在线 视频观看免费 | 日韩毛片久久91 | 一区二区三区网站在线免费线观看 | 日韩 亚洲 中文 图片 小说 | 十八成人网 | 中文字幕不卡 | 中文字幕精品波多野结衣 | 亚洲国产日产无码精品 | 午夜影院普通用户体验区 |