基于AJAX技术的邮件系统设计论文.doc_第1页
基于AJAX技术的邮件系统设计论文.doc_第2页
基于AJAX技术的邮件系统设计论文.doc_第3页
基于AJAX技术的邮件系统设计论文.doc_第4页
基于AJAX技术的邮件系统设计论文.doc_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

- I - 摘要摘要 电子邮件是 Internet 应用服务之一,也是使用最多的互联网服务。电子邮件 系统通过 Internet,实现各类信息的传送、接受贮存等处理,将邮件传送到世界的 各个角落。电子邮件系统经过几十年的发展,已经形成了完善的技术体系。用户 最初只能通过 Outlook,Foxmail 等客户端软件来收发自己的邮件,但单纯的客户 端程序进行邮件的收发已经不能满足用户移动办公的需要。Web 邮件技术的出现, 彻底解决了用户办公的需要,其快捷、方便的优点吸引了众多的网络用户。用户 无须安装任何 Email 客户端软件,只需使用浏览器打开放在服务器上的特定网页 即可进行 Email 收发及相关操作。 J2EE、AJAX 技术等新的 Web 技术的层出为邮件系统的更新带来了巨大的突 破。本文着重阐述了实现基于 J2EE 的 Hibernate 技术和 AJAX 技术的 Web 邮件 系统的理论基础、设计思想、系统架构、开发过程以及对以上内容的总结与展望。 论文前半部分着重论述了 Hibernate、AJAX 和 JavaMail 邮件技术,阐释了电子邮 件系统的工作原理及邮件传送过程,探寻如何开发邮件服务。简单介绍了与邮件 系统相关的几个重要协议。熟悉按照这些协议、规范进行的电子邮件的传送过程。 论文后半部分是对系统的各个模块进行分析、设计和编码。包括系统整体设计思 想,模块设计思想以及各功能模块实现的流程图等。最后对该邮件系统进行了总 结和展望。 关键词:电子邮件,邮件系统,邮件协议 - II - ABSTRACT Email is one of Internet applications and also the service users use most. Electronic Mail System fulfills transmission, receiving, storing management of all kinds of signals through Internet which connects the whole world, sending mails to every corner of the world. With many years development, Email System has formed consummate technology architecture. Users can only use client softwares such as Outlook, Foxmail to receive and send their own mails at first, but this cant satisfy the requirement of users moving office. With the appearance of Web Mail technique, the problem has been completely solved. Many network users are attracted by its advantages of speediness and convenience. Users can implement Email receiving, Email sending and so on by opening certain Web pages on Servers through Browsers without installing any Email Client softwares. The layer of the new Web technique of the J2EE, AJAX technique .etc. for mail system of renewal bring huge of break. This paper emphasizes expatiating on the implementation of Web Mail system based on the Hibernate of J2EE platform and AJAX , including their theory foundation, design idea, system structure, development process, sum-up and expectation of all above. The first half part of the paper discusses the Hibernate and the AJAX architecture and JavaMail mail technique, explaining the work principia of Email system and the transmission process of Email, exploring how these technologies use JavaMail API to provide standard mail service. Then the paper simply introduces several important protocols correlative with mail system and comprehends the transmission process of Email according to these protocols and criterions. The other half part of this paper sets forth analyse, design and coding of each module in the mail system, including systems whole design idea, modules design idea, implementation flow chart of each module, etc. In the end, the summarization of the Web Mail system is simply discussed in this paper. Keywords: Email, Mail System ,Mail Protocols - III - 目录目录 摘要.I ABSTRACT .II 第 1 章 引言.1 1.1 背景 .1 1.2 研究内容 .2 第 2 章 邮件系统开发方法.3 2.1 AJAX 客户端开发.3 2.1.1 AJAX 的异步能力.3 2.1.2 AJAX 丰富页面操作.3 2.2 数据库访问技术分析 .4 2.2.1 JDBC 数据库访问技术 .4 2.2.2 Hibernate 中间件 .4 2.3 J2EE 邮件开发.5 2.4 开发环境介绍 .6 2.4.1 DREAMWEAVER.6 2.4.2 MyEclipse 6.0.6 2.4.3 Microsoft SQLServer 2000 .7 2.4.4 Tomcat 6.0.8 2.5 本章小结 .9 第 3 章 系统需求分析.10 3.1 系统设计原理.10 3.2 系统主要功能要求 .11 3.3 本章小结 .13 第 4 章 数据库设计.14 4.1 数据库结构分析 .14 4.2 概念结构设计 .15 4.3 逻辑结构设计 .17 4.4 数据库安全性和完整性 .19 - IV - 4.4.1 数据库的安全性.19 4.4.2 数据完整性.19 4.5 本章小结 .20 第 5 章 系统详细设计与实现.21 5.1 邮件管理设计 .21 5.1.1 异步发送电子邮件.21 5.1.2 利用 POP3 协议接收电子邮件.25 5.2 邮件标签管理设计 .28 5.2.1 添加标签.28 5.2.2 修改标签.28 5.2.3 删除标签.28 5.2.4 使用标签.29 5.3 通讯录设计 .31 5.3.1 组信息的管理.31 5.3.2 联系人管理.32 5.4 软件测试与完善 .33 5.5 本章小结 .34 第 6 章 结束语.35 致谢.36 参考文献.37 - 1 - 第第 1 章章 引言引言 1.1 背景背景 电子邮件是 Internet 应用服务之一,通过网络,可以以非常低廉的价格、非 常快速度的方式,与世界上任何一个网络用户联络,这些电子邮件可以包含文字、 图像、声音或其他多媒体信息。根据中国互联网络信息中心 2008 年 1 月发布的 最新中国互联网络发展状况统计报告 ,目前我国上网用户已达到 2.1 亿人, 其中电子邮件使用率是 56.5%,这意味着有过亿的网民在使用电子邮件1。随着 中国 Internet 应用的日益普及和逐步深入,这些数字仍在不断增长。在全球范围 来看,每天有数十亿封电子邮件在全球传递。电子邮件已成为用户不可或缺的需 要。 如何提高电子邮件系统的性能成为各大电子邮件服务商竞争的焦点。新的 Web 技术的出现为 Web 系统的更新带来了巨大的突破。如 Gmail 运用 JavaScript,建立了一个良好的使用者介面;同时应用 AJAX 技术也使速度相当快 2。163 新版邮箱在“极速风格”升级中创新使用了 AJAX 技术,令系统响应和 页面加载更加流畅,使得 Web 系统的工作性能接近基于桌面的客户端软件3。 通过将 AJAX 技术用于 Web 邮箱开发主要有两方面的优点: 一是加载动态化4。当用户登录邮箱时,可感受到超快速的系统响应和流畅 的页面加载,甚至不用打断交互流程进行重新加载,就可以动态更新。因为 AJAX 技术的应用已将很多必要的信息缓存在终端用户的电脑里,不需要再浪费 带宽访问服务器5。也就是说,当用户要阅读一封邮件时,AJAX 技术立即重新 配置页面,用户无须等待就可以看到结果6。 二是操作客户端化。AJAX 技术的应用还进一步提高了 Web 系统的易用性和 界面友好度7。如:用户可在不同的窗口中浏览多个邮件,收信的同时可以写信, 发邮件的同时可以读信,无需太多操作就可以重排顺序。用户还可以直接使用键 盘操作打开写信页面、阅读新邮件或删除邮件,并且在 Web 页面中可以用鼠 标将邮件拖动至任意文件夹。 基于 AJAX 技术的 Web 开发定能为客户带来更多、更新的浏览体验8。 本系统就是在这个背景下提出来的,希望通过本系统能够进一步掌握新的学 - 2 - 习 Web 技术,了解网络邮件原理和实现过程,体验 AJAX 异步通信在 Web 邮件 系统应用中带来的好处,以及 Hibernate 等 J2EE 框架在 Web 开发过程中的运用。 1.2 研究内容研究内容 本系统采用 J2EE 和 AJAX 技术,利用 JavaMail 开发包提供的邮件功能,完 成邮件系统的设计。其中,AJAX 技术主要是应用在表现层上,这是因为 AJAX 在表现层上错提供了强大的功能,除了能给用户在使用上带来给多的美观外, AJAX 最主要的特点就是使用 XMLHttpRequest 对象异步发送请求,将 AJAX 的 异步能力与邮件的发送相结合,实现发送邮件异步化,这将会使用户从长久的等 待邮件发送过程中解脱出来,无需等待邮件发送结束即可转向其他操作。利用 AJAX 技术将使页面操作更加丰富9。采用 Hibernate 处理持久化。通过 Hibernate 提供的在 Java 对象与关系数据库之间的桥梁作用,实现两者之间的自动转换。数 据的存储无需通过繁琐的 SQL 操作,只需对持久化类操作,并结合 Hibernate 提 供的功能,就可实现复杂的数据存储过程。Hibernate 的使用,简化了系统的设计, 同时也为系统的设计和维护带来更多的方便10。Sun 公司为方便 Java 开发人员在 应用程序中能够实现邮件发送和接受功能而提高了一套标准的开发包,这套开发 包包括面向普通开发人员调用的 JavaMail API 和实现了 SMTP、POP3、IMAP 等 底层协议的服务提供程序。只要调用 JavaMail 开发包中的相应的 API 类,就可以 完成邮件的发送和接受功能11。 - 3 - 第第 2 章章 邮件系统开发方法邮件系统开发方法 2.1 AJAX 客户端开发客户端开发 AJAX 在浏览器和服务器之间添加 AJAX 中间层,允许浏览器异步发送请求, 同时允许动态加载服务器响应。用户的请求不再直接向服务器提交,从而避免丢 弃当前页面,而是使用 XMLHttpRequest 异步地向服务器发送请求。 2.1.1 AJAX 的异步能力的异步能力 AJAX技术的核心是对象XMLHttpRequest。通过使用XMLHttpRequest对象, 浏览器通过客户端脚本与服务器交换数据,Web页面无须频繁的重新加载,其内 容也由客户端脚本动态更新。 异步是指基于AJAX的应用于服务器通信的方式。对于传统的Web应用,每 次用户发送请求或向服务器请求获得数据时,浏览器都会完全丢失当前页面,而 等待重新加载新的页面。在服务器完全响应之前,用户的浏览器将会是一片空白, 用户的动作必须中断。异步是指用户发送请求后,完全无须等待,请求在后台发 送,不会阻塞用户的当前活动。用户无须等待第一次请求得到完全响应,可以立 即发送第二次请求。 使用AJAX的异步模式,浏览器就不必等待用户请求操作,无须重新下载整 个页面,一样可以显示服务器的响应数据。 2.1.2 AJAX 丰富页面操作丰富页面操作 AJAX 并不是一门全新的技术,它所基于的技术大都是成熟的技术,如 JavaScript,DOM,CSS 和 XML 等。 JavaScript 是一种跨平台的脚步语言,虽然很多地方也称 JavaScript 为面向对 象的语言,但 JavaScript 并不是一种纯粹的面向对象的语言。JavaScript 简单、易 用,而且在绝大部分浏览器中都运行良好。JavaScript 脚本是 AJAX 技术中另一 个重要的部分,是 AJAX 技术的编程脚本。JavaScript 主要完成如下事件:创建 XMLHttpRequest 对象,通过 XMLHttpRequest 向服务器发送请求,创建回调函数, 监视服务器响应状态,当服务器响应完成后回调函数启动,回调函数通过 DOM 动态更新 HTML 页面。JavaScript 技术是 AJAX 技术的黏合剂,通过 JavaScript 将其他几个技术有机地结合在一起,从而形成 AJAX 技术。 - 4 - DOM 是操作 HTML 和 XML 文件的一组 API,它提供了文件的结构表示。 通过使用 DOM,可以采用编程方式操作文档结构,还可以改变文档的内容。通 过使用 DOM,HTML 页面以一种结构化方式组织在一起,HTML 页面的内容以 节点方式组织。Web 程序开发者可增加文件的节点、属性及事件,从而提供对 HTML 页面的动态更新,例如,document 就代表 HTML 文件本身,table 对象则 代表 HTML 的表格对象等。DOM 为 JavaScript 或程序语言提供操作网页内容的 方式。 在 Web 页面上采用 CSS 技术,可以有效的对页面的布局、字体、颜色、背 景和其他效果实现更加精确的控制。通过 CSS 技术,只要对相应的代码做一些修 改,就可以改变同一页面的不同部分,或者页数不同的网页的外观和格式。 XML 文档是一种结构化文档,用于简单数据的表示和交换,用于面向消息 的计算,以及与用户相关,表示相关的上下文。 2.2 数据库访问技术数据库访问技术分析分析 2.2.1 JDBC 数据库访问技术数据库访问技术 JDBC 是一种用于执行 SQL 语言的 JavaTM API。它由一组用 Java 编程语言 编写的类和接口组成。JDBC 为工具/数据库开发人员提供了一个标准的 API,使 他们能够用纯 Java API 来编写数据库应用程序。有了 JDBC,向各种数据库发送 SQL 语句就是一件很容易的事。而且使用 Java 编程语言编写的应用程序,就无须 去忧虑要为不同的平台编写不同的应用程序。将 Java 和 JDBC 结合起来将是程序 员只须写一遍程序就可以让它在任何平台上运行。Java 具有坚固、安全、易于理 解和可以从网络上自动下载等特性是编写数据库应用的杰出语言。所需要的只是 Java 应用程序与各种不同数据库之间进行对话的方法。而 JDBC 正是作为此种用 途的机制。JDBC 扩展了 Java 的功能。JDBC 使信息传播变得容易经济。Java 和 JDBC 可为外部客户提供获取信息更新的更好方法。 2.2.2 Hibernate 中间件中间件 Hibernate 是一个免费的开源 Java 包,它使得与关系数据库打交道变得十分 轻松,就像数据库中包含普通 Java 对象一样。Hibernate 是采用 ORM 映射机制的 持久层开发工具,它是 Java 应用和关系数据库之前的桥梁,负责 Java 对象和关 - 5 - 系数据之间的映射。内部封装了 JDBC 访问数据库的操作,向上层应用提供了面 向对象的数据库访问 API,在 JAVA 应用中使用到 Hibernate 包含如下步骤: 创建 Hibernate 配置文件; 创建持久类; 创建对象、关系、映射文件; 通过 Hibernate API 编写访问数据库的代码。 创建 Hibernate 的配置文件 Hibernate 从中读取和数据库连接的相关信息,这 个配置文件应该位于应用的 classpath 中,主要有两种形式:XML 格式和. Properteis 信息文件。创建持久化类就是指需要被 Hibernate 持久化到数据库中的 类,持久化类通常都是模型中的实体类,符合 JavaBean 的规范,包含一些属性, 以及与之对应的 get、set 方法。Hibernate 技术本质上是一个提供数据库服务的中 间件。利用数据库以及其他一些配置文件如 perties,XML Mapping 等来为应用程序提供数据持久服务的。 2.3 J2EE 邮件开发邮件开发 J2EE 平台通过 JavaMail API 提供标准的邮件服务。JavaMail API 允许在应 用程序中以独立于平台、独立于协议的方式收发电子邮件。JavaMail API 的设计 是,为收发信息提供与协议无关的访问。它提供平台无关的和协议无关的框架来 构建基于 Java 技术的邮件和消息传递应用。 JavaMail 是 J2EE 规范的核心组成部分,它为 Web 应用提供电子邮件服务, 把客户端(包含发送方和接收方)分为三层:应用层,JavaMail API 层和协议实现 层。 (1) JavaMail 应用层 应用层可以存在于 J2EE 体系架构中的 Web 层和业务层。典型的应用如:企业 应用中利用 JavaMail 向客户发送注册确认通知,向客户发送购物订单信息,以及 宣传企业产品信息等等。企业用户也可以利用 JavaMail 收取企业邮箱中的邮件, 并进行自动处理。所以应用层有三种典型的应用:发送邮件,接收邮件和处理邮 件。 (2) JavaMail API 层 - 6 - JavaMail API 提供基本的邮件系统的对象,它主要包括 javax.mail 包及其子 包。JavaMail 包含的主要的类中,构成 API 的核心类包括:会话(Session )、消息 (Message )、地址(Address )、认证(Authenticator )、传输(Transport )、存储(Store) 和文件夹(Folder )。所有这些类都可以在 JavaMail API 即 javax.mail 的顶层包中找 到,使用的子类可在 ernet 包中找到,由它们可以组成典型的邮件系 统。 (3) JavaMail 协议实现层 在邮件服务中,一般来说有 2 种不同类型的协议需要实现。传输(Transport) 是 Sun 用于服务的原语,该服务能够把消息发送到它的目的地。最常使用的传输 类型是普遍采用的 SMTP 传输。而另一个类型是存储(Store),它也是服务,可以 连接到这个服务来取得己经传输到用户邮箱中的消息。POP3 就是个存储转发的 信息交换系统,而 IMAP 被设计成 POP 的超集。协议实现层主要实现 API 层中 的 Transport 和 Store 服务。 2.4 开发环境介绍开发环境介绍 2.4.1 DREAMWEAVER 8 DREAMWEAVER 是美国 MACROMEDIA 公司开发的集网页制作和管理网 站于一身的所见即所得网页编辑器,它是第一套针对专业网页设计师特别发展的 视觉化网页开发工具,利用它可以轻而易举地制作出跨越平台限制和跨越浏览器 限制的充满动感的网页。其特点有以下几方面: 制作效率高:DREAMWEAVER 可以用最快速方式 Fireworks,FreeHand,或 Photoshop 等档案移至网页上。 网站管理方便:使用网站地图可以快速制作网站雏形,设计,更新和重 组网页。改变网页位置或档案名称,DREAMWEAVER 会自动更新所有连结。 控制能力强:DREAMWEAVER 是唯一提供 Roundtrip HTML、视觉化编 辑与原始码编辑同步的设计工具。 全方位的呈现:利用 DREAMWEAVER 设计的网页,可以全方位的呈现 在任何平台的热门浏览器上。 本系统采用 DREAMWEAVER 8 进行页面设计与 CSS 样式的编写。 - 7 - 2.4.2 MyEclipse 6.0 MyEclipse 企业级工作平台是对 Eclipse IDE 的扩展,利用它我们可以在数据 库和 J2EE 的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。 它是功能丰富的 J2EE 集成开发环境,包括了完备的编码、调试、测试和发布功 能,完整支持 HTML, Struts, JSF, CSS, JavaScript, SQL, Hibernate。在结构上, MyEclipse 的特征可以被分为 7 类:J2EE 模型、 WEB 开发工具、 EJB 开发工具、 应用程序服务器的连接器、J2EE 项目部署服务、 数据库服务、 MyEclipse 整 合帮助。对于以上每一种功能上的类别,在 Eclipse 中都有相应的功能部件,并 通过一系列的插件来实现它们。MyEclipse 结构上的这种模块化,可以让我们在 不影响其他模块的情况下,对任一模块进行单独的扩展和升级。MyEclipse 是一 款功能强大的 J2EE 集成开发环境,支持代码编写、配置、测试以及除错。 MyEclipse 6.0 的发布极大的增强了 Eclipse 3.3/Europa 集成开发环境的功能, 增加了 Java 6 支持的组件和加快了 AJAX 的开发率,革命性的提高了开发者的开 发效率。MyEclipse 6.0 现在提供了一些高级特性,已经和 Spring、Java 持久化结 构开发集成在一起。这项非同寻常的整合,允许用户们创建实体管理器和事务 beans,生成实体和 DOA。在以前版本的基础上,MyEclipse 6.0 增强了一些功能, 如平台和安装的更多支持,改进了 Java EE 5 和 Spring 的功能部件,支持 AJAX 开发和测试,支持 RAD Web 开发,具备 Matisse4MyEclipse 可视化 Swing 设计器, 快速 Java EE 部署和测试。 2.4.3 Microsoft SQLServer 2000 (1) 非过程化语言 SQL 是一个非过程化的语言,因为它一次处理一个记录,对数据提供自动导 航。SQL 允许用户在高层的数据结构上工作,而不对单个记录进行操作,可操作 记录集。所有 SQL 语句接受集合作为输入,返回集合作为输出。SQL 的集合特 性允许一条 SQL 语句的结果作为另一条 SQL 语句的输入。 SQL 不要求用户指定 对数据的存放方法。 这种特性使用户更易集中精力于要得到的结果。所有 SQL 语句使用查询优化器,它是 RDBMS 的一部分,由它决定对指定数据存取的最快 速度的手段。查询优化器知道存在什么索引,哪儿使用合适,而用户从不需要知 道表是否有索引,表有什么类型的索引。 (2) 统一的语言 - 8 - SQL 可用于所有用户的 DB 活动模型,包括系统管理员、数据库管理员、 应用程序员、决策支持系统人员及许多其它类型的终端用户。基本的 SQL 命令 只需很少时间就能学会,最高级的命令在几天内便可掌握。 SQL 为许多任务提 供了命令,包括: 查询数据 在表中插入、修改和删除记录 建立、修改和删除数据对象 控制对数据和数据对象的存取 保证数据库一致性和完整性 以前的数据库管理系统为上述各类操作提供单独的语言,而 SQL 将全部任 务统一在一种语言中。 (3) 是所有关系数据库的公共语言 由于所有主要的关系数据库管理系统都支持 SQL 语言,用户可将使用 SQL 的 技能从一个 RDBMS 转到另一个。所有用 SQL 编写的程序都是可以移植的。 SQL Server 2000 是一种关系数据库,它除了支持传统关系数据库组件(如数 据库、表)和特性(如表的 JOIN)外,另外也支持当今关系数据库的常用组件, 如存储过程、视图等。另外,它还支持目前关系数据库都支持的标准查询语句 SQL ( Structured Query Language)。SQL 另外一项重要的特点是它支持数据库复制 功能。也就是当在一个数据库执行操作时,可以将其操作结果传至远程的 SQL 相 同的数据库上,让两边的数据库的数据保持同步。 2.4.4 Tomcat 6.0 Tomcat 是一个免费的开源的 Serlvet 容器,它是 Apache 基金会的 Jakarta 项 目中的一个核心项目,由 Apache,Sun 和其他一些公司及个人共同开发而成。由 于有了 Sun 的参与和支持,最新的 Servlet 和 JSP 规范总能在 Tomcat 中得到体现。 与传统的桌面应用程序不同,Tomcat 中的应用程序是一个 WAR(WebArchive) 文件。WAR 是 Sun 提出的一种 Web 应用程序格式,与 JAR 类似,也是许多文件 的一个压缩包。这个包中的文件按一定目录结构来组织:通常其根目录下包含有 Html 和 JSP 文件或者包含这两种文件的目录,另外还会有一个 WEB-INF 目录, 这个目录很重要。通常在 WEB-INF 目录下有一个 web.xml 文件和一个 classes 目 - 9 - 录,web.xml 是这个应用的配置文件,而 classes 目录下则包含编译好的 Servlet 类 和 JSP 或 Servlet 所依赖的其它类(如 JavaBean) 。通常这些所依赖的类也可以打 包成 JAR 放到 WEB-INF 下的 lib 目录下,当然也可以放到系统的 CLASSPATH 中,但那样移植和管理起来不方便。 Tomcat 不仅仅是一个 Servlet 容器,它也具有传统的 Web 服务器的功能:处 理 Html 页面。但是与 Apache 相比,它的处理静态 Html 的能力就不如 Apache。 我们可以将 Tomcat 和 Apache 集成到一块,让 Apache 处理静态 Html,而 Tomcat 处理 JSP 和 Servlet。这种集成只需要修改一下 Apache 和 Tomcat 的配置文件即可。 2.5 本章小结本章小结 良好的开发环境和开发工具是开发系统的重要条件。本系统利用 JSP 语言的 动态性和 Microsoft SQLServer2000 数据库的强大功能以及 AJAX 得异步能力来编 译程序,并采用 Hibernate 中间件技术连接数据库,来完成对数据库的添加、修 改、删除和查询等操作。本章主要对系统的开发环境和开发技术做了一个简要的 介绍。通过 AJAX 技术异步通信的特点来分析系统的异步能力设计。通过对数据 库访问技术的介绍和比较选择系统采用的 Hibernate 中间件数据库访问技术。通 过对 Microsoft SQLServer2000 数据库面向对象、集成环境、处理多种数据信息等 特点的分析,系统最终采用了 Microsoft SQLServer2000 数据库进行开发。通过对 JavaMail 的介绍,来了解 JavaMail 的邮件处理能力。通过对 DREAMWEAVER 和 MyEclipse 编程环境的功能介绍来分析选择系统编译的环境。最后,通过对 Tomcat 的介绍,分析选择 Tomcat 作为系统的 Web 服务器的优越性。 - 10 - 第第 3 章章 系统需求分析系统需求分析 3.1 系统设计原理系统设计原理 一个电子邮件系统一般应具有两个子系统:邮件用户代理 MUA(Mail User Agent),又称用户接口,它允许人们读取和发送电子邮件;邮件传输代理 MTA(Mail Transport Agent),它将消息从出发地传到目的地。邮件用户代理是一 个本地程序,它提供命令行方式、菜单方式或图形方式的界面来与邮件服务器交 互。邮件传输代理是在后台运行的系统程序,在系统间传输电子邮件。 邮件用户代理部分至少应该具有以下功能:撰写:给用户提供很方便的编辑 信件的环境;显示:能方便地在计算机屏幕上显示出来信(包括信件附上的声音 和图像);处理:收信人应能根据情况按不同方式对信件进行处理。邮件传输代 理应具有以下功能:传送和代理:电子邮件按照客户服务器方式工作。当用户编 辑好要发送的邮件后,就通过用户接口交给邮件传输程序。发送信件时,邮件传 输程序作为远程目的计算机邮件服务器的客户,与目的主机建立 TCP 连接,并将 邮件传送到目的主机。一接收方计算机的邮件传输程序在收到邮件后,将邮件存 放在接收方的邮箱中,等待着用户来读取。由于用户代理的屏蔽作用,用户在发 送和接收邮件时看不见邮件传输程序的工作情况;报告:将邮件传送的情况(已 交付、被拒绝、丢失等)向发信人报告。目前使用最多的 MUA 应该要算是 Mirosoft 的 Outlook 和 Outlook Express 这类的邮件客户端程序虽然方便,但常碰 到的一个问题就是在默认情况下一旦邮件被收进某台电脑中,从其他电脑就读不 到这个邮件了,因此必须设置在邮件服务器上保存副本,才能从其他电脑读取邮 件。同时,此类客户端程序必须在用户电脑上进行安装配置,这对于需要移动办 公的人员来说又显得极为不便,这时候 WebMail 就显出它的方便之处了。 WebMail 就是使用者通过浏览器连到 Web 服务器,而由 Web 服务器上的程序负 责作收信/发信的动作。使用者直接通过浏览器进行读信/写信等操作,信件其实 并不存在于使用者的电脑上。因此无论使用者用的是哪一部电脑,只要可以连上 网络,都可以读到以前的和新收到 的信件。另外一个好处是 WebMail 不容易因 为读取含有病毒的文档而导致中毒,更不会发生个人邮件系统中毒后,寄送大量 病毒信件给其他亲朋好友。如图 3-1 所示,在发信方面,WebMail 程序以 SMTP - 11 - 协议和邮件服务器上的 MTA 勾通,将信件经由 MTA 送往 Internet。而在信件的 处理上,则是通过 POP3 或是 IMAP4 进行存取。 图图 3-1 WebMail 收收/ /发信件发信件 3.2 系统主要功能要求系统主要功能要求 根据 Web 邮件系统的目标和特性,系统所需功能可用下图 3-2 表示 (1) 系统登入 用户输入用户名和密码,系统查询数据库中的信息对密码进行验证。如密码 不正确将不能进入系统;如密码正确,系统会自动根据该用户的信息进入系统配 置界面。 - 12 - 邮件系统 用户管理 邮件管理 通讯录管理 邮件标签管理 注册新用户用户信息管理 写新邮件收件箱阅读邮件转发邮件删除邮件 添加组编辑组属性添加联系人联系人管理 添加新标签编辑标签属性给邮件贴标签 图图 3-2 邮件系统功能邮件系统功能 (2) 用户管理 注册新用户:系统的开始是用户注册,只有注册成功的用户才可以登录 进入系统。 用户信息管理:为用户提供用户个人信息的修改和查阅,修改用户信息 功能还包括修改密码和修改用户基本信息两个部分。 (3) 邮件管理 写新邮件:为用户提供撰写新邮件的输入界面,在此,用户可以输入邮 件的相关发送地址、主题、内容和携带的附件。 - 13 - 收件箱:以列表形式显示用户所收到所有邮件。 阅读邮件:通过收件箱内的链接,查看邮件的内容,包括显示发件人的 地址、邮件的主题、邮件的内容和所携带的附件。 转发邮件:实现将收到的邮件进行转发,用户只需输入转发的目的邮件 地址就可以完成邮件的转发操作。 删

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论