`
Joy.zhang
  • 浏览: 59011 次
  • 性别: Icon_minigender_2
  • 来自: 深圳
社区版块
存档分类
最新评论

在JSP中使用JavaMail

    博客分类:
  • Jsp
阅读更多
在这篇文章中你可以了解到JavaMail API的一些要点以及如何在JSP中使用它。本文中还包括了在JSP中使用JavaMail的实例。JavaMail是JSP应用软件中相当强大的 API。

你希望在jsp中建立一个邮件发送收取工具吗?下面将介绍的就是在jsp中建立一个邮件发送收取工具。在这篇文章中你可以了解到JavaMail API的一些要点以及如何在JSP中使用它。本文中还包括了在JSP中使用JavaMail的实例。JavaMail是JSP应用软件中相当强大的 API。

  阅读这篇文章需要对JSP、JavaBeans和JavaMail有一定的初步了解。当然,有关于 JavaMail的知识你可以通过阅读这篇文章来获得。如果你对于以上三项一无所知,但你所使用的服务器支持JSP和JavaMail的话,你可以仅仅通过复制/粘贴来使用它们。

什么是JavaMail
  JavaMail是Sun发布的用来处理email的API。它可以方便地执行一些常用的邮件传输。

  虽然JavaMail是Sun的API之一,但它目前还没有被加在标准的java开发工具包中(Java Development Kit),这就意味着你在使用前必须另外下载JavaMail文件。除此以外,你还需要有Sun的JavaBeans Activation Framework (JAF)。JavaBeans Activation Framework的运行很复杂,在这里简单的说就是JavaMail的运行必须得依赖于它的支持。在Windows 2000下使用需要指定这些文件的路径,在其它的操作系统上也类似。

  接下来要讲解的是这篇指南的最难理解的部分。

  这篇指南包括三部分:HTML表格、关于JavaMail、JavaMail和JSP的结合。

第一部分:HTML表格
  第一部分提供了一个最基本的基于HTML的email发送收取程序的例子。第二部分则讲述JavaMail的工作原理。第三部分则介绍将 JavaMail加入JSP,创建一个基本的email发送收取程序。

划分组件
  JSP最重要的特性是能将整个网页划分成一些细小的组件。这里使用的组件包括:

  ●一个用来将email的信息发送给JSP的HTML表格;

  ●一个JSP页面用来处理和发送信件。

  第一步,就是创建一个HTML表格用来给JSP页面发送信息。你可以将以下的HTML代码复制到你的电脑上:

用来发送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>

  以上这段程序将创建一个包含email基本信息(例如:收件地址、发送地址、主题和内容)的文件。当然你可以根据你自己的需要来决定这个文件包含那些信息。

  这个HTML文件的使用有两点要求:第一点是生成的文件必须发送给接下来将介绍的程序使用。在这个例子中就是 sendmail.jsp,但在你使用时,必须用这个文件在系统里的URL来代替它;第二点是必须有空间来允许用户发送email。

  第二部分将对JavaMail的特征进行一些分析,为在第三部分创建JSP程序作准备。所以接下来我们将学习 JavaMail。

第二部分:关于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>

  你会很快体会到JavaMail的方便之处,JSP和JavaMail将是未来的希望。
分享到:
评论

相关推荐

    jsp写的收发邮件,使用javamail写的

    在JSP中使用JavaMail,首先需要引入相应的库,例如`javax.mail`和`javax.mail.internet`。然后,创建`Session`对象来设置邮件服务器参数,接着创建`MimeMessage`对象来构建邮件内容,包括发件人、收件人、主题和...

    JSP中使用JavaMail

    在这篇文章中你可以了解到JavaMail API的一些要点以及如何在JSP中使用它。本文中还包括了在JSP中使用JavaMail的实例。JavaMail是JSP应用软件中相当强大的API。 阅读这篇文章需要对JSP、JavaBeans和JavaMail有一定...

    jsp+javamail邮件发送代码

    在JSP中使用JavaMail发送邮件的步骤如下: 1. 引入JavaMail所需的依赖:你需要在项目中添加JavaMail的jar包,通常包括`mail.jar`和`activation.jar`。这些可以在JavaMail的官方网站上下载或通过Maven或Gradle等构建...

    使用jsp实现javaMail邮箱功能开发

    在JavaMail中,我们可以使用`POP3Store`类来连接POP3服务器并处理邮件。 4. 使用JSP和JavaMail发送邮件: - 首先,我们需要在JSP页面中配置JavaMail的环境,包括设置SMTP服务器地址、用户名、密码等信息,创建`...

    JAVA-JSP学习系列之JavaMail发邮件

    通过本文的学习,你应该已经了解了如何在JSP中使用JavaMail来发送邮件的基本流程。这种方法不仅能够提高应用的功能性,还能够让用户享受到更加便捷的服务体验。在实际开发过程中,还可以根据具体需求对邮件发送功能...

    最新版本的JavaMail和 JavaBeans Activation Framework 1.1.0 解决jsp发送邮件问题

    在JSP中使用JavaMail发送邮件通常涉及以下步骤: 1. 创建并配置Session对象,指定SMTP服务器信息。 2. 创建Message对象,设置发件人、收件人、主题和正文。 3. 使用Transport对象将Message发送出去。 **JavaBeans ...

    JSP使用组件jspSmartUpload+JavaMail+jaf+iText+jFreechart

    在JavaMail中,jaf用于解析邮件中的附件,识别其MIME类型,以便正确处理各种类型的文件,如文本、图片、音频或文档。 4. **iText**:这是一个强大的PDF生成和处理库,可以用于创建、修改和读取PDF文件。在报表生成...

    javaweb开发JSP资料大全

    -session对象和out对象、JSP中request属性的用法、用WebWork、JSP、Velocity建立注册页面、在JSP中使用JavaMail、用JSP操作Cookie、解决MVC下分页显示的问题、缓冲技术提高JSP程序性能和稳定性、jsp属性的保存范围、...

    jsp中邮件功能开发实例源码

    在JSP中使用JavaMail API,你需要引入相关的jar文件,如`mail.jar`和`activation.jar`,这些通常包含在Java的额外库或通过Maven或Gradle添加依赖。 发送文本邮件的过程相对简单,主要涉及以下步骤: 1. 创建`...

    JsP中邮件发送代码

    以下是在JSP中使用JavaMail API发送邮件的基本步骤: 1. 引入JavaMail相关库: 在JSP页面顶部添加以下指令,确保引入了JavaMail API的依赖: ```jsp *" %&gt; *" %&gt; ``` 2. 配置邮件属性: 创建一个`Properties...

    完整代码,基于jsp 邮件开发 javamail

    在这个"完整代码,基于jsp 邮件开发 javamail.7z"的压缩包中,很可能包含了用于演示如何使用JSP和JavaMail API发送邮件的实例代码。 首先,我们需要理解JSP的基础。JSP是一种动态网页技术,它将Java代码嵌入到HTML...

    jsp邮箱email

    在JSP中使用JavaMail API需要引入对应的jar文件,如 mail.jar 和 activation.jar。 2. **SMTP(Simple Mail Transfer Protocol)**:SMTP是互联网上用于发送电子邮件的标准协议。在使用JavaMail API时,需要配置...

    韩顺平jsp购物网源码(包含javaMail)

    通过这个项目,学习者不仅可以深入理解JSP的使用,还可以掌握如何集成javaMail发送邮件,同时了解一个完整的电商网站是如何运作的。这对于想要提升Web开发技能,特别是JSP和电子邮件服务的开发者来说,是一个非常...

    JSP 应用程序开发指南(PDG)

    - **在JSP中使用JavaMail**:创建`Session`、`Message`对象,配置邮件服务器信息,发送邮件。 ### 8. 实战示例 - **用户注册与登录**:使用JSP和JavaBean处理用户输入,JDBC操作数据库存储用户信息。 - **邮件通知...

    hyl.rar_javamail_javamail jsp_mail

    `javamail_jsp`则表明了如何在JSP页面中使用JavaMail。JSP是一种基于Java的服务器端脚本语言,用于生成动态网页内容。将JavaMail与JSP结合,可以让用户在网页上直接发送或接收邮件,例如,创建一个简单的web邮件系统...

    JSP+SERVLET+JAVAMAIL

    在Web开发中,有时我们需要实现电子邮件的发送和接收功能,这通常涉及到JSP、Servlet和JavaMail API的综合应用。本项目是一个基于MyEclipse的工程实例,通过导入该工程,开发者可以直观地学习和理解这些技术如何协同...

    E-mail与短信(jsp).rar

    在JSP中使用JavaMail,首先需要在项目中引入javax.mail和javax.mail.internet这两个库。通过SMTP(Simple Mail Transfer Protocol)服务器,我们可以创建并发送邮件。以下是一个简单的示例: 1. 导入必要的库: ```...

Global site tag (gtag.js) - Google Analytics