在JSP中使用JavaMail(2)

原创 2005年04月30日 16:55:00
第二部分:关于JavaMail
文档的使用 

  下载的JavaMail API中带的文档是很有用的。你可以在JavaMail下的/docs/javadocs/index.html找到它。第二部分主要将分析邮件程序的组件。你可以通过阅读文档来获得更多这方面的信息。

  组件发送邮件需要使用JavaMail,它使对邮件的操作变得简单易用。

属性对象

  JavaMail需要创建一个格式为"mail.smtp.host"的文件用来发送信息。
Properties props = new Properties ();
props.put("mail.smtp.host", "smtp.jspinsider.com");

对话对象

  所有的基于JavaMail的程序都至少需要一个或全部的对话目标。

Session sendMailSession;
sendMailSession = Session.getInstance(props, null);

传输

  邮件的传输只有送出或受到两种状态。JavaMail将这两种不同状态描述为传输和储存。传输将送出邮件,而储存将收取邮件。

Transport transport;
transport = sendMailSession.getTransport("smtp");

  使用JavaMail能为我们节约大量的时间。JavaMail能代替所有的SMTP的工作。

  注意:JavaMail并不能完全的支持所有的邮件发送收取工作。它目前仅支持IMAP、SMTP和POP3,除此以外你只有等待新的JavaMail版本或自己开发协议。

信息对象

  信息对象将把你所发送的邮件真实的反映出来。

Message newMessage = new MimeMessage(sendMailSession);

  这就是我们所需要的全部四个对象。下一步将是如何将对象加入到JSP中。

第三部分:JavaMail和JSP的结合

  创建JSP

  下面我们将开始将他们结合在一起。最重要的一点是要确认根据页面指示分类。还要记得在邮件上标注java.util.date。

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

  其次,创建邮件发送的确认信息。确认信息可以是任意的,一般常用"你的邮件已经发送出去了(Your mail has been sent)。"

信息是如何创建和发送的

  我们在第二部分里已经讨论过信息对象的创建。我们下面将对信息进行操作。这就和设置信息对象的属性一样简单。你可以通过下面的程序来实现这项操作。

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

现在将开始发送信息。通过JavaMail来实现它非常简单。

  transport.send(newMessage);

将所有的组件结合在一起

  现在所有的组件都已经齐全了。现在将它们都放在JSP里面。要注意每一个错误信息,并将它反馈给用户。代码如下,你可以通过复制它们直接使用:

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>

在JSP中使用JavaMail

  你希望在jsp中建立一个邮件发送收取工具吗?下面将介绍的就是在jsp中建立一个邮件发送收取工具。在这篇文章中你可以了解到JavaMail API的一些要点以及如何在JSP中使用它。本文中还包括了在...
  • airhand
  • airhand
  • 2004年08月02日 17:28
  • 1069

在JSP中使用JAVAMAIL

什么是JavaMail   JavaMail是Sun发布的用来处理email的API。它可以方便地执行一些常用的邮件传输。  虽然JavaMail是Sun的API之一,但它目前还没有被加在标准的jav...
  • qsd007
  • qsd007
  • 2007年06月11日 09:03
  • 679

在JSP中使用JavaMail

在JSP中使用JavaMailJava中文站   你希望在jsp中建立一个邮件发送收取工具吗?下面将介绍的就是在jsp中建立一个邮件发送收取工具。在这篇文章中你可以了解到JavaMail API的一些...
  • zhouziqiang
  • zhouziqiang
  • 2004年03月23日 10:08
  • 754

JSP中使用JavaMail

 你希望在jsp中建立一个邮件发送收取工具吗?下面将介绍的就是在jsp中建立一个邮件发送收取工具。在这篇文章中你可以了解到JavaMail API的一些要点以及如何在JSP中使用它。本文中还包括了在J...
  • kinglino520
  • kinglino520
  • 2009年05月04日 16:54
  • 188

在JSP中使用JavaMail(1)

什么是JavaMail   JavaMail是Sun发布的用来处理email的API。它可以方便地执行一些常用的邮件传输。   虽然JavaMail是Sun的API之一,但它目前还没有被加在标准的ja...
  • feng_sundy
  • feng_sundy
  • 2005年04月30日 16:37
  • 1128

Android之使用JavaMail发送邮件

首先,我们原本可以直接通过Intent来调用系统邮件客户端发送邮件,但是这种发送需要跳转activity很不方便,所以我打算自己通过smtp协议发送邮件。很幸运,在google code上有一个现成的...
  • xanxus46
  • xanxus46
  • 2012年12月14日 19:02
  • 4797

在JSP中使用JavaMail(下)

第二部分:关于JavaMail 文档的使用 下载的JavaMail API中带的文档是很有用的。你可以在JavaMail下的/docs/javadocs/index.html找到它。第二部分主要将...
  • arielxp
  • arielxp
  • 2004年07月01日 13:59
  • 4264

在JSP中使用JavaMail(上)

你希望在jsp中建立一个邮件发送收取工具吗?下面将介绍的就是在jsp中建立一个邮件发送收取工具。在这篇文章中你可以了解到JavaMail API的一些要点以及如何在JSP中使用它。本文中还包括了在JS...
  • arielxp
  • arielxp
  • 2004年07月01日 13:58
  • 2581

JavaMail基本使用

JavaMail基本使用基本概述 JavaMail,顾名思义,提供给开发者处理电子邮件相关的编程接口。它是Sun发布的用来处理email的API。它可以方便地执行一些常用的邮件传输。我们可以基于J...
  • q547550831
  • q547550831
  • 2016年10月23日 20:10
  • 1393

JSP中使用JavaMail发送邮件

  • fw5332
  • fw5332
  • 2009年10月12日 15:53
  • 210
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:在JSP中使用JavaMail(2)
举报原因:
原因补充:

(最多只允许输入30个字)