java Mail API 是Sun开发的最新标准扩展API之一,它给Java应用程序开发者提供了独立于平台和协议的邮件/通讯解决方案。本文介绍该API的核心机制,并通过一个邮件转发服务器(邮件列表服务器)演示其具体用法。
Java Mail API的开发是Sun为Java开发者提供公用API框架的持续努力的良好例证。提倡公用框架,反对受限于供给商的解决方案,充分预示着一个日益开放的开发环境的建立。
在email通讯领域,面向最终应用的开发者(以及用户)已经能够购买到最适合他们需要的公用API框架实现,而低层开发者能够提供有效访问特定邮件服务的解决方案。其意义在于:小型开发组能够集中精力于开发高性能的客户端邮件软件,而为它提供不同邮件环境下的支持则变得相当轻易;大型开发组织则侧重于为新开发的企业级邮件服务提供公用的访问支持,并由此获得丰富的应用软件支持。最大的赢家是信息系统用户,它能够按照要求(性能、投资等)方便地集成由不同厂商提供的产品和方案。 开发高度可重用的开放API框架的要害之一在于强调抽象接口技术,即在支持现有标准的基础上,支持未来扩展和可选实现。Java Mail API体现了这一思想。Sun和其它开发商正在为大多数现有的公用标准和协议提供缺省实现和工具。已经可用的支持至少包括:POP3、SMTP、IMAP等。
一、 Java Mail API 介绍
Java Mail API 的结构本身证实了它的开发者的基本目标之一——软件开发的工作量应该取决于应用程序本身的复杂程度以及开发者所要求的控制程度。换句话说,Java Mail API尽可能地保持简单。本文所附示例程序ListServer(以及API软件包所带的演示程序)充分说明了这一点。
乍看起来,Java Mail API所拥有的类总数以及类之间的关系可能让人误解为需要漫长的学习时间。实际上,一旦正式开始使用,你就会发现该API不失为在应用程序中加入健壮的邮件/通讯支持的简单工具。
Java Mail API包括的类数量远远大于此处涉及的类数量。下面按照在一个典型的应用程序中各个类出现过程为序,集中介绍部分核心类的功能和作用: