基于JavaMail的邮件客户端程序的设计与实现
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
网络通讯与安全
电脑知识与技术
电脑知识与技术
1引言
一个完整的邮件系统由邮件客户端程序和邮件服务器程序组成,实现邮件系统所使用的邮件协议为MIME、SMTP、POP3和IMAP4协议,其中MIME协议用于定义邮件格式,SMTP协议用于传输邮件,POP3和IMAP4协议用于从邮件服务器接收邮件。
邮件客户端程序主要实现用户和邮件服务器的交互,用户使用它可以创建、发送、阅读、管理自己的邮件。目前流行的邮件客户端程序很多,比如大家熟悉OutLookExpress等。本文将介绍一种基于JavaMail的邮件客户端程序的设计与实现方法。
2JavaMail
JavaMail是sun公司提供的用来开发邮件系统的软件包,它属于标准扩展API,仅包含在JDK1.4以上的版本和J2EE以上的
版本中
。JavaMail的体系结构如图1所示。
JavaMailAPI封装在mail.jar包中,其核心由抽象类层与Internet邮件类层两个部分组成(见图1)。其
中,抽象类层定义了与平台、底层协议无关的Email操作界面,其相关的类与接口定义在javax.mail包中;而Internet邮件类层则用于支持InternetMIME(RFC822)的标准,相关的类与接口被封装在javax.mail.
internet包中。
此外,为了支持MIME标准,实现对多种媒体邮件格式的支持,JavaMailAPI中使用了JavaBeans的技术,需要Java激活框架的支持,因此,进行邮件系统开发时还需要用到JAFAPI,该API封装在activation.jar包中,相关的类与接口定义在javax.acti-vation包中。
3系统设计
JavaMailAPI使邮件的发送与接收得到大大的简化。本文所开发的邮件客户端程序是在JBuilder9环境下实现的,JBuilder9自带JDK1.4.1版本,不需额外下载mail.jar邮件开发包和activa-tion.jar激活框架包。主要实现如下基本功能:
(1)收取并显示POP3邮件服务器上指定邮箱的邮件;(2)使用SMTP邮件服务器发送邮件;(3)邮件附件的发送与接收;(4)删除邮件。
邮件客户端程序的功能界面如图2所示。
图2邮件客户端程序的功能界面4系统技术实现
3.1环境配置和界面搭建
在JBuilder9中,创建工程后,首先为工程添加JavaMail和JavaBeansActivationFrameWork开发包,然后使用swing图形工具包搭建各个程序界面,并在使用JavaMailAPI的类文件中导入相关的API包,即在程序的开头添加下面的语句:
importjavax.mail.*;importjavax.internet.*;importjavax.activation.*;
3.2设置邮件服务器参数的实现
用户在收发邮件时,需要设置邮件服务器主机、
收发邮件帐户及密码等信息。因此系统提供对上述信息的设置与存储的功能,这里,我们采用属性文件的形式存储SMTP和POP3邮件服务器属性设置。其文件名为smtpPop3.properties,位于工程的根目录下,可使用java.uitl.Properties类的setProperty()方法和getProperty()方法对属性文件中的属性内容进行存取。本系统smtpPop3.properties文件的内容格式如下:
smtpPop3.pop3host=pop3邮件服务器地址(如pop3.sina.com.cn)smtpPop3.smtphost=smtp邮件服务器地址(如smtp.sina.com.cn)smtpPop3.address=收发邮件帐户(如xyz@sina.com)smtpPop3.username=用户名(如xyz)smtpPop3.password=密码(如797989)3.3创建与发送邮件功能的实现
发送邮件的基本过程为:点击主界面中的【创建邮件】
按钮后,弹出新邮件编辑窗体,在该窗体中编辑新邮件,选择邮件附件
收稿日期:2006-04-04
作者简介:杨淑萍(1963-),女,山西怀仁人,讲师,硕士,研究方向,电子商务技术;聂哲(1970-),男,湖南益阳人,副教授,硕士,研究方向,电子商务技术。
基于JavaMail的邮件客户端程序的设计与实现
杨淑萍,聂哲
(深圳职业技术学院软件工程系,广东深圳518055)
摘要:本文简述了JavaMail及其结构,详细阐述了使用JavaMail开发邮件客户端程序的方法,并给出了主要的实现代码,为邮件应用程序的进一步开发提供了基础。
关键词:JavaMail;邮件客户端程序;SMTP;POP3中图分类号:TP311文献标识码:A文章编号:1009-3044(2006)20-0106-03
DesignandImplementationofMailClientProgramBasedonJavaMail
YANGShu-ping,NIEZhe
(DepartmentofComputerSoftware,ShenzhenPolytechnic,Shenzhen518055,China)
Abstract:ThispaperintroducesJavaMailandexpoundsthedevelopingmethodofmailclientprogramwithJavaMailindetail,Italsogivesoutthemainimplementcodesofmailclientprogrameandprovidesbaseofdevelopingmailapplication.
Keywords:avaMail;mailclientprogram;SMPT;POP3
图1JavaMial体系结构106