1、 本 科 毕 业 论 文 基于 JavaMail 的邮件收发系统的开发 Based on the program development for sending and receiving Java email 姓 名: 学 号: 学 院:软件学院 系:软件工程 专 业:软件工程 年 级: 指导教师: 年 月摘 要 摘 要 随着计算机网络的发展,电子邮件以其快速、便利、成本低等优势已成为人们生活中不可或缺的一部分,使人与人之间信息传输的时间大为缩短。电子邮件( E-mail)就是通过 Internet 或者 Intranet 网络从某一终端机输入并通过邮件服务器传送到另一终端的信件、便条、文件
2、、图片或声音等信息。通过模拟邮政系统的“投递 存储 转发”运作,可以将电子邮件从用户的电子邮箱经由两级服务器发送到目的地主机的电子邮件信箱,实现通讯目的。与传统邮件相 比,电子邮件的优点是显而易见的:既减少了人力物力的消耗,节省了社会资源;又节约了时间,极大的提高了工作效率。电子邮件在全球范围内几乎可以忽略空间距离,达到收发的同步性,而与同样提供实时通讯的电话和传真相比,电子邮件所需的费用极低。正因为如此,比起 Internet 的其他功能,电子邮件从一开始就更容易被接受和使用,以其方便、快捷、经济等特点受到了网民的极大青睐。作为网络中最早发展起来的部分,电子邮件的功能也最为强大,已成为目前网
3、络上用户最广泛,使用频率最高的一种应用,甚至是人们上网的第一需求。 基于课题的关系, 本文先对与邮件发送和接收程序开发密切相关的协议如SMTP、 POP3 协议作了个系统而全面的阐述,在了解了协议的工作原理后根据目前网络编程技术选择了 Java 和 Jsp 作为开发平台,接着根据软件工程学方法的指导下实现了具有简单的收发功能的邮件客户端系统,最后对该系统作了客观的评价并指明了系统的现实意义、缺点以及系统的优化方案。 关键词 : 电子邮件; JavaMail;网络编程Abstract Abstract With the development of internet, the email has
4、 become necessary in people s life because of its own advantages, such as rapidity, convenience and low-cost etc. It has shortened the information transmission among people. E-mail is the letters, messages, documents, pictures or sounds that input from one terminal and output from another terminal t
5、hrough the Internet or Intranet. Based on imitating the postal system, mail-memory-transmit operation, we could send the user s email to the target host computer through two-grade severs. Compare with the traditional email, the advantages of the email are obvious, which decrease the drain on manpowe
6、r and material resources, save social resource and time, thus, improve the working efficiency. We could almost ignore the space distance in the world when we use the email. The price is lower than we use the telephone or fax to send the message. Compared with the other functions of internet, email i
7、s easily accepted and used by people because of its convenience, rapidity and economical. Email is the first development in internet and its function is powerful. It has widely used in people s life and become necessary when people surf in the internet. According to the subject, the passage has full
8、y explained the relevant agreements between mail sending and receiving program such as SMTP, POP3 etc. When we get the operational principle of the agreement, we choose JAVA and JSP as the development platform based on the present internet program technology. It could receive and send email accordin
9、g to the software project method. In the ending part of the passage, we make external comments for the system and point out the realistic significance, disadvantage and the system optimized scheme for the system. Key Words: E-mail; JavaMail; Programming For Internet目 录 目 录 第一章 项目概述 . 1 1.1 项目背景简介 .
10、1 1.2 应用系统开发理论基础 . 1 1.2.1 JavaMail API 的介绍 . 1 1.2.2 JavaMail 的体系结构 . 1 1.2.3 E-mail 协议的概述 . 3 1.2.4 JavaMail 的核心成员 . 5 1.2.5 JSP 技术的概述 . 6 1.2.6 Web 邮件系统架构 . 7 第二章 系统需求与分析 . 9 2.1 系统的开发背景及其功能 . 9 2.2 系统目标 . 9 2.3 系统可行性研究 . 9 2.4 需求分析 . 10 2.4.1 需求分析的任务 . 10 2.4.2 系统功能分析 . 11 2.4.3 性能的需求 . 11 2.4.4
11、 系统的数据需求 . 12 第三章 系统详细设计与模块实现 . 13 3.1 系统功能模块图与说明 . 13 3.2 系统详细设计 . 15 3.2.1 邮件服务器的连接 . 15 3.2.2 发送邮件模块的设计 . 15 3.2.3 接收邮件模块的设计 . 16 3.2.4 邮件回复模块的设计 . 17 3.2.5 邮件删除模块的设计 . 18 3 3 系统的实现 . 18 目 录 第四章 系统测设和评价 . 21 4.1 系统测试 . 21 4.1.1 测试方法 . 21 4.1.2 系统的测试 . 21 4.2 系统评价 . 25 4.2.1 系统的优点 . 25 4.2.2 系统的缺点
12、 . 25 4.2.3 系统的优化 . 25 第五章 总结与展望 . 26 5.1 总结 . 26 5.2 展望 . 26 参考文献: . 27 致 谢 . 29 Contents Contents Chapter1 Project Summary . 1 1.1 Project background . 1 1.2 Theoretical basis for the development . 1 1.2.1 JavaMail API Introduction. 1 1.2.2 JavaMail Architecture. 1 1.2.3 E-mail Agreement Overview.
13、 3 1.2.4 JavaMail. 5 1.2.5 JSP Overview. 6 1.2.6 Web mail System Architecture . 7 Chapter2 System Requirements and Analysis. 9 2.1 Development and function of the background . 9 2.2 System Target . 9 2.3 Feasibility Study . 9 2.4 Needs Analysis . 10 2.4.1 Mission needs Analysis. 10 2.4.2 System Func
14、tional Analysis . 11 2.4.3 Performance Requirements. 11 2.4.4 Data Needs . 12 Chapter3 Design and Modules. 13 3.1 System Function Module Map and Description . 13 3.2 The Detailed Design . 15 3.2.1 Mail Server Connection. 15 3.2.2 Send E-mail Module. 15 3.2.3 Receive E-mail Module . 16 3.2.4 E-mail R
15、eply to the Design of Modules. 17 3.2.5 Delete E-mail Module. 18 3 3 System Realization. 18 Contents Chapter4 System Testing and Review . 21 4.1 System Testing . 21 4.1.1 Test Method. 21 4.1.2 System test . 21 4.2 Systematic Review . 25 4.2.1 System advantages . 25 4.2.2 System shortcomings . 25 4.2
16、.3 System Optimization . 25 Chapter5 Summary and Outlook . 26 5.1 Summary . 26 5.2 Outlook . 26 References . 27 Thanks. 29 厦门大学本科生毕业论文 基于 JavaMail 的邮件收发系统的开发 1 第一章 项目概述 1.1 项目背景简介 21 世纪是网络飞速发民展的时候 ,电子邮件已经成为热闹话题 .随着网络技术的不断发民 ,网络应用已经渗透到人类社会的各个角落 .作为网络世界信息传输的支撑点的电子邮件 ,更是人们关注的焦点 ,通过电子邮件无论朋友在何方 ,都可以通过电子邮
17、件方便的联系交流 ,电子邮件开辟了网络世界里的一片天地。 电脑的日益普及,大大改变了各行各业的工作方式和人们的生活方式,越来越多的人开始进入到电脑的世界。电脑的普及化,进而促进了互联网的进一步的发展和完善,而作为互联网上基本的存在电子邮件系统给予了 上网的电脑用户另一个别样的空间。电子邮件的出现是为了方便我们的生活,我们可以不出家门就可以得到我门想要的东西,它的发展使人们获取信息,交流信息显得更方便了,随着互联网的快速发展,满足广大互联网用户的商业信息交易和日常办公需要,电子邮件得到了最广泛的应用,能完成简单操作邮件客户端软件开发具有时代性的意义。下面将分章节说明了在 SMTP 和 POP 等
18、网络协议研究报告和邮件客户端系统的详细设计过程。 1.2 应用系统开发理论基础 1.2.1 JavaMail API 的介绍 Sun 公司提供的 JavaMail API是 Java 的标准扩展,是一种可选的,能用于读取、编写和发送电子消息的包。使用 JavaMail API 开发包可以方便地创建邮件用户代理( Mail User Agent, MUA)类型的程序,类似于 FoxMail, Microsoft Outlook这些邮件程序。 JavaMail API 开发包的主要目的是类似发送邮件或其他邮件传输代理类型的程序那样用于传输、发送和转发消息。用户可以与 MUA 类型的程序交互,以阅读
19、和撰写电子邮件。 JavaMail API 的设计为邮件的收发信息提供与协议无关的访问。 1.2.2 JavaMail 的体系结构 JavaMail API 是 Sun 公司提供的一个独立于平台和协议的收发邮件框架,带有 Sun 实现的 SMTP,IMAP4 和 POP3 协议提供程序。另外 JavaMail API 还需要JavaBeans Activation Framework( JAF, JavaBeans 激活框架), JavaBeans 激厦门大学本科生毕业论文 基于 JavaMail 的邮件收发系统的开发 2 活框架提供 MIME 邮件消息的处理支持。主要用于处理附件,与 Jav
20、aMail API一起,可以实现构造 ,传输及管理邮件的应用程序,是开发邮件程序必不可少的部分。使用 JavaMail API 编程时,应 将 Mail.jar 和 Activation.jar 文件添加到类路径环境变量 CLASSPATH 中。 JavaMail API 结构框架如图 1.1 所示。 图 1.1 JavaMail API 的结构框架 JavaMail API 提供基本的邮件系统的对象,比如消息,地址和头文件等。主要包括 Javax.Mail包及其及包。 1. Javax.Mail提供邮件处理的基本类。 2. Javax.Mail.Event 定义和邮件客户相关的事件。 3.
21、Javax.Mail.Internet 提供处理邮件头有关的类和接口,支持当前绝大多数的主流邮件协议,包括 SMTP、 POP3、 IMAP4 等协议。 4. Javax.Mail.Search 提供邮件查找有关的类。构成 JavaMail API 核心的类包括:会话( Session 类),消息( Message 类),地址( Address 类),认证( Authenticator类),传输( Transport 类),存储( Store 类)和文件夹( Folder 类)。所以这些类都可以在 JavaMail API 即 Javax.Mail 的顶包中找到,使用的子类可在Javax.Ma
22、il.Internet 包中找到,由它们可以组成多种典型号的邮件系统。 SMTP server IMAP mail store POP3 mail store SMTP SP IMAP SP POP3 SP JavaMail API Java Application JAF Java Mail 厦门大学本科生毕业论文 基于 JavaMail 的邮件收发系统的开发 3 1.2.3 E-mail协议的概述 对一般的电子邮件使用者来说, E-mail 非常简单地执行邮件传输,但是对于编程人员来讲 E-mail 的打包,传输,发送和接收是很复杂的。这要涉及到很多的协议,主要有发送电子邮件的 SMTP
23、协议、用来接收电子邮件的 POP3 协议和Internet 邮件访问协议 IMAP 以及多用途 Internet 邮件扩充协议 MIME。 Sun 公司的 JavaMail API 包定 了这样一组接抽象类和接口,通过 Java 应用程序支持邮件系统。它封装了电子邮件的基本协议,编程人员可以不用自己去处理那些复杂的协议。 1. SMTP 协议的介绍 简单邮件传输协议( Simple Mail Transfer Protocal, SMTP)是用于传送电子邮件的机制,是为了保证电子邮件的可靠和高效传送,它通对 TCP/IP 网络把消息从一个邮件服务器移到其它邮件服务器(见图 1.2)。 SMTP
24、 的一重要特点是它能够在传送中接力传送邮件,即邮件可以通过不同网络上的主机接力式传送。 SMTP 是 Internet 电子邮 件服务的基本,它工作在两种情况下:一是电子邮件从客户机传输到服务器;二是从某一个服务器传输到另一个服务器。因为 SMTP是个请求 /响应协议,在 TCP 上,它使用端口 25进行传输,将消息转发给用做接收消息的 SMTP 服务器,最后用户可通过 POP 或 IMAP 协获取该消息。 2. SMTP 的工作机制 SMTP 通常有两种工作模式:发送 SMTP 和接收 SMTP。具体工作方式为:发送SMTP 在接到用户的邮件请求后,判断此邮件是否为本地邮件,若是直接投送到用
25、户的邮箱,否则向 DNS 查询远端邮件服务器的 MX 记录,并建立与远端接收 SMTP之间的一个双向传送通道,此后 SMTP 命令由发送 SMTP 发出,由接收 SMTP 接收,而应答则反方面传送。一旦传送通道建立, SMTP 发送者发送 MAIL 命令指明邮件发送者。如果 SMTP 接收者可以接收邮件则返回 OK 应答。 SMTP 发送者再发出 RCPT命令确认邮件是否接收到。如果 SMTP 接收者接收,则返回 OK 应答;如果不能接收到,则发出拒绝接收应答(但不会中止整个邮件操作),双方将如此重复多次。当接收者收到全部邮件后会接收到特别的序列,如果接收者成功处理了邮件,返回 OK 应答。 3. 连接和发送过程
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。