首页/技术开发/内容

JSP Insider 5: 在JSP中使用JavaMail---3

技术开发2024-02-29 阅读()
[摘要]第二部分,关于JavaMail使用文档下载JavaMail API 之后,其中所包含的文档非常有用,文档存放在JavaMail所在目录的子目录/docs/javadocs/中。下面将介绍邮件工具中所...
第二部分,关于JavaMail

使用文档
下载JavaMail API 之后,其中所包含的文档非常有用,文档存放在JavaMail所在目录的子目录/docs/javadocs/中。下面将介绍邮件工具中所需用到的一些组件。请参阅JavaMail文档,以便了解更多相关信息。

使用JavaMail发送email时需要的组件

JavaMail的结构体系,使得处理email尤为简单。下面为我们所需要的一些类。

Properties(属性):JavaMail在创建一个会话对象时,需要用到Properties。该对象将寻找名为“mail.smtp.host”的属性串,其属性值是发送mail的主机。
Properties props = new Properties ();
props.put("mail.smtp.host", "smtp.jspinsider.com");
Session(会话): Session对象表示JavaMail中的一个mail对话。每个基于JavaMail的工具至少需要一个session,但可以有多个session。本例中, Session对象需要知道处理邮件的SMTP服务器。创建Session 对象可以这样进行:
Session sendMailSession;
sendMailSession = Session.getInstance(props, null);
Transport(传输):邮件要么是发送出去,要么是接收进来。JavaMail 用两个不同的对象表示这两个动作,即Transport和Store。Transport对象用于发送信息,Store用于接收信息。在本教程中,我们需要用到Transport对象。
Transport transport;
transport = sendMailSession.getTransport("smtp");
可以使用JavaMail 的Session对象的getTransport 方法来初始化Transport 对象。传递的字符串参数定义了返回对象中的使用的协议。这里,我们可以看到,使用JavaMail节省了很多的时间,否则我们得自己编程序完成SMTP的全部实现过程,而JavaMail已经把这些工作预先做好了。

注意:JavaMail并不是什么都支持,目前仅支持IMAP,SMTP和POP3。除此之外,如果还需要支持其他的协议,你就需要等待JavaMail的下一版本,或者你自己构造有关协议。
Message(消息):Message对象表示要发送的实际的email消息。创建的Message 对象为MimeMessage,该对象需要知道选择哪一个JavaMail 会话。
Message newMessage = new MimeMessage(sendMailSession);
这就完了,我们需要的就是上面介绍的这四个对象。下一步,将介绍如何把这些对象放到JSP中。

……

相关阅读