在线邮件收发系统毕业设计Word下载.docx

上传人:b****1 文档编号:3309694 上传时间:2023-05-01 格式:DOCX 页数:52 大小:644.86KB
下载 相关 举报
在线邮件收发系统毕业设计Word下载.docx_第1页
第1页 / 共52页
在线邮件收发系统毕业设计Word下载.docx_第2页
第2页 / 共52页
在线邮件收发系统毕业设计Word下载.docx_第3页
第3页 / 共52页
在线邮件收发系统毕业设计Word下载.docx_第4页
第4页 / 共52页
在线邮件收发系统毕业设计Word下载.docx_第5页
第5页 / 共52页
在线邮件收发系统毕业设计Word下载.docx_第6页
第6页 / 共52页
在线邮件收发系统毕业设计Word下载.docx_第7页
第7页 / 共52页
在线邮件收发系统毕业设计Word下载.docx_第8页
第8页 / 共52页
在线邮件收发系统毕业设计Word下载.docx_第9页
第9页 / 共52页
在线邮件收发系统毕业设计Word下载.docx_第10页
第10页 / 共52页
在线邮件收发系统毕业设计Word下载.docx_第11页
第11页 / 共52页
在线邮件收发系统毕业设计Word下载.docx_第12页
第12页 / 共52页
在线邮件收发系统毕业设计Word下载.docx_第13页
第13页 / 共52页
在线邮件收发系统毕业设计Word下载.docx_第14页
第14页 / 共52页
在线邮件收发系统毕业设计Word下载.docx_第15页
第15页 / 共52页
在线邮件收发系统毕业设计Word下载.docx_第16页
第16页 / 共52页
在线邮件收发系统毕业设计Word下载.docx_第17页
第17页 / 共52页
在线邮件收发系统毕业设计Word下载.docx_第18页
第18页 / 共52页
在线邮件收发系统毕业设计Word下载.docx_第19页
第19页 / 共52页
在线邮件收发系统毕业设计Word下载.docx_第20页
第20页 / 共52页
亲,该文档总共52页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

在线邮件收发系统毕业设计Word下载.docx

《在线邮件收发系统毕业设计Word下载.docx》由会员分享,可在线阅读,更多相关《在线邮件收发系统毕业设计Word下载.docx(52页珍藏版)》请在冰点文库上搜索。

在线邮件收发系统毕业设计Word下载.docx

易于维护和扩展,方便用户的掌握和使用。

此邮箱系统功能主要分为管理员管理和用户管理两大部分,管理员管理主要包括管理用户信息、删除用户等;

用户管理主要包括用户个人信息的管理、个人邮箱的管理等。

该系统可以根据对功能需求进行扩展和完善。

关键词:

邮件管理系统;

MyEclipse;

MVC;

Struts2

Abstract

Currently,therearetoomanyE-mailManagementSystem,andtoomanybusinesschangingrequirements,whichresultsofE-mailManagementSystemmaintenanceandoperationsbecomedifficulttochange.InordertogreatlyconvenientofInternetusers,theE-mailManagementSystemusedtheB/Stechnologytocarryonthedevelopment,whichhasavoidedthemalpracticeofthetraditionalC/Sstructure.AndcombiningtheE-mailManagementSystemandtheWebapplication,thenusercanvisitE-mailManagementSystemjustbyopeningthebrowser.TheE-mailManagementSystembasicfunction:

theuserregisters,addresslistmanagement,receivingthemail,sendingthemail,readingthemail,mailmanagementfunction.

Inthispaper,itfirstlybeginswiththesoftwarearchitecturepatterns,andthenconstructsanE-mailManagementSystemwhichsupportsthebasicfunctions,suchassendingandreceivingemail,managingemailbox,nextaddtheextension.OnthebasisofintroducingStruts2architectureandMVCstructure,thepaperdiscusseshowtousethesetechnologiesandframeworksofJAVAtobuildaflexible,practicalonlineteachingplatformbyMyEclipsedevelopmenttool.Themainadvantagesofthisstructureareasfollows,itsolvestheproblemsofmaintainabilityandextendibilityintraditionalwebsitesystems;

itenablesuserstomoreeasilygraspandusethissystem.

Thismailmanagementsystemfunctionsaredividedintoadministratorandusermanagementoftwoparts,theadministratormanagementincludesmanagementofuserinformation,deleteusers,etc.;

Theusermanagementincludesuserpersonalinformationmanagement,personalmailboxmanagement.Thesystemcanbeextendedandimprovedbasedonfunctionalrequirements.

KeyWords:

E-mailManagementSystem;

Struts2

引言

中国是世界上Email账号最多的国家,也是发展最快、市场环境最复杂的国家。

电子邮件的发展如同一面镜子,折射出中国的网络运营商及网民们在互联网发展过程中的种种心态。

无论如何,电子邮件在人们的生活、工作、学习过程中,越来越普及。

同时,还有一种趋势,将多种通信手段相结合,成为一个立体的、全方位的通信网络。

这中间,电子邮件也在扮演着相当重要的角色。

实在难以想象,如果没有了电子邮件,网民的生活是如何的。

但大多网站邮箱功能过于强大,操作繁琐,不简单实用,甚至有的是收费邮箱,对于小型企业或集体用于内网通信成本过高。

所以本系统针对于小范围人群内部通信设计,实现邮箱基本功能,操作简单易用。

本系统采用MyEclipse8.6开发,后台数据库采用MySQL5.1进行开发,系统总体分为三大模块:

登录管理模块,用户身份进行验证以及注册的实现。

邮箱管理模块,收发邮件和对邮件信息进行管理。

通讯录管理模块,对联系人信息进行管理。

绪论

选题背景

电子邮件(Electronic-Mail也称为E-mail),它是用户或用户组之间通过计算机网络收发信息的服务。

目前,电子邮件是互联网上使用最为广泛的功能,现已成为公司进行顾客服务的强大工具,成为网络用户之间快捷、简便、可靠且成本低廉的现代化通讯手段,也是互联网上使用最广泛、最受欢迎的服务之一。

并且现在很多高校也采用邮件方式教学和收发作业。

目前互联网60%以上的活动都与电子邮件有关。

尤其如今环境资源遭到破坏,提倡环保的主题下,不论是企业还是个人都应该尽量节省纸张,采用邮件形式来传递信息,这样不仅可以环保同时也提高了效率和安全性。

而邮件管理系统来处理用户收发邮件及管理邮件等基本操作是必不可少的。

课题意义

电子邮件作为现在重要的通信手段,在各种网络服务中,电子邮件系统以其方便、快捷的特点成为人们进行信息交流的理想工具。

通过电子邮件人们可以以十分低廉的代价,以非常快的速度同世界上其他互联网用户联络。

电子邮件的使用者数量呈几何级数增长。

当前流行的各大邮件客户端软件的除了最主要的收发信件之外,功能越来越复杂,但是人们平常真正用到的功能很少,很多功能尤其对于那些计算机知识相对缺乏的人来说,更加显得太过于华丽而不太实用。

对于用户来说一款简单,方便,快捷的邮件收发系统将会在很大程度上为用户提供满意的服务,制作一款能满足用户需求的邮件收发系统是每一个设计者所追求的目标。

因此希望通过本次设计完成一个简单的邮件收发系统,实现邮件的接收与发送,并能完成附件的传输,同时能实现邮件用户登录管理及邮件删除等功能,开发这个各种功能相对简单实用的邮件客户端程序,简化了很多不必要的功能,解决了小型企业和集体不能在同一平台通信交流的问题。

课题的研究内容

本课题的研究内容是使用MyEclipse开发基于MVC架构的邮件管理系统。

通过对MVC设计模式和Struts2架构的研究,设计一套灵活的系统整体架构方案,方便对系统功能模块的增减和修改,以应对不同用户的不同需求,解决现有邮件管理系统复杂性和可维护性差的问题。

将研究结果应用于实际系统开发,为邮件管理系统的快速开发、可维护和扩展能力提供有效的支持。

为客户与员工建立一个统一而方便的信息沟通平台,利用信息技术实现信息沟通一体化、规范化,服务于工程实践。

论文的组织结构

本论文的结构分为第一章绪论,第二章理论基础与相关技术介绍,第三章系统需求分析,第四章系统总体结构设计,第五章系统详细设计,第六章系统测试,第七章总结与展望五部分来阐述。

系统需求分析主要是介绍系统的开发技术、背景和环境,分析用户对本系统的需求,描述用户端特性、运行环境、性能需求、系统功能需求等方面的需求。

通过数据流程图和数据字典对系统完整的进行设计,对各个功能模块进行系统的分析划分和描述。

系统的总体结构设计是分别进行系统的逻辑设计和数据库的设计,完成数据库中各表之间的联系描述和关系描述,通过数据库E-R图表示。

系统详细设计是对系统各部件的详细设计,其中有对各功能模块的设计、系统流程图、各功能模块的代码分析和实现以及系统各界面的运行状况。

系统测试是对本系统进行测试用例,测试本系统是否可以正常运行,并分析各测试用例。

总结和展望是对本课题进行最后完整的总结,包括系统的各功能内容和特点,系统的研发体会以及系统需要改进的方面进行详细的总结。

相关工具与技术介绍

系统开发的工具

MyEclipse8.6

MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和J2EE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。

它是功能丰富的J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSF,CSS,Javascript,SQL,Hibernate。

在结构上,MyEclipse的特征可以被分为7类:

JavaEE模型,WEB开发工具,EJB开发工具,应用程序服务器的连接器,JavaEE项目部署服务,数据库服务,MyEclipse整合帮助。

对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。

MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。

简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的JavaEE集成开发环境,支持代码编写、配置、测试以及除错,MyEclipse6.0以前版本需先安装Eclipse。

MyEclipse6.0以后版本安装时不需安装Eclipse。

MyEclipse8.6的主要改进是在团队写作和集中工作环境的集中配置管理方面。

同时MyEclipse8.6还包含了上百个功能的改进和新特性,这些新功能和特性将让MyEclipse8.6用户在开发代码,测试,以及部署应用方面都得到极大的便利。

MySQL5.1

MySQL是一个小型关系型数据库管理系统,目前MySQL被广泛地应用在Internet上的中小型网站中。

由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。

安全性上,MySQL采用十分灵活和安全的权限和密码系统,允许基于主机的验证。

连接到服务器时,所有的密码传输均采用加密形式,从而保证了密码安全。

MySQL服务器提供了对SQL语句的内部支持,可用于检查、优化和修复表。

MySQL5.1具备多项崭新企业级功能,包括:

⏹圖表及索引區間(TableandIndexPartitioning)–MySQL5.1支援五種不同的平面數據區間:

類別、散列、關鍵及混合模式(即次等區間,sub-partitioning)。

图表及索引区间(TableandIndexPartitioning)–MySQL5.1支援五种不同的平面数据区间:

类别、散列、关键及混合模式(即次等区间,sub-partitioning)。

透過將圖表及索引數據區間,從而使到查詢回應時間更快,因為只需掃描有關的數據區間,毋須掃描整體圖表或索引。

透过将图表及索引数据区间,从而使查询回应时间更快,因为只需扫描有关的数据区间,毋须扫描整体图表或索引。

此外,透過區間能使不同類型的儲存及其他維護程序可以更輕易、更快速部署。

此外,透过区间能使不同类型的储存及其他维护程序可以更轻易、更快速部署。

⏹以行列為基礎及混合式複製(Row-BasedandHybridReplication)–MySQL5.1提供兩個全新的複製選項。

以行列为基础及混合式复制(Row-BasedandHybridReplication)–MySQL5.1提供两个全新的复制选项。

以列为基础的复制可以在主伺服器及后备伺服器之间复制数据的转变,而非实质SQL语句(SQLstatement),至于混合式复制则可根据独立的SQL运行方式,作出以语句或行列为基础的复制。

这项功能可为应用带来最具效率及最安全的复制程序。

⏹工序排程–這個嶄新工具可讓開發人員及數據庫管理員將日常及持續進行的SQL轉為基礎的工序,在數據庫伺服器上自動執行,從而透過在Linux或UNIX的CRON或MicrosoftWindows的工序排程軟件,為數據庫的特定工序提供更大的支援。

工序排程–这个崭新工具可让开发人员及数据库管理员将日常及持续进行的SQL转为基础的工序,在数据库伺服器上自动执行,从而透过在Linux或UNIX的CRON或MicrosoftWindows的工序排程软件,为数据库的特定工序提供更大的支援。

⏹全新MySQLQueryAnalyzer–太陽電腦全新的MySQLQueryAnalyzer工具為MySQL企業版用戶而設,可以藉著監察查詢的效能表現,從而準確更正SQL編碼問題,顯著提升數據庫應用的執行速度和減少停機時間。

全新MySQLQueryAnalyzer–Sun电脑全新的MySQLQueryAnalyzer工具为MySQL企业版用户而设,可以借着监察查询的效能表现,从而准确更正SQL编码问题,显著提升数据库应用的执行速度和减少停机时间。

B/S架构编程体系

B/S架构的全称为Browser/Server,即浏览器/服务器结构,就是只安装维护一个服务器(Server),而客户端采用浏览器(Browse)运行软件。

B/S结构最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。

只要有一台能上网的电脑就能使用,客户端零维护。

系统的扩展性非常容易,只要能上网,再由系统管理员分配一个用户名和密码,就可以使用了。

B/S结构的程序架构是发展的趋势,从MS的.Net系列的BizTalk2000Exchange2000等,全面支持网络的构件搭建的系统.。

SUN和IBM推的JavaBean构件技术等,使B/S更加成熟。

B/S三层体系结构采用三层客户服务器结构,在数据管理层(Server)和用户界面层(Client)增加了一层结构,称为中间件(Middleware),使整个体系结构成为三层。

三层结构是伴随着中间件技术的成熟而兴起的,核心概念是利用中间件将应用分为表示层、业务逻辑层和数据存储层三个不同的处理层次。

三个层次的划分是从逻辑上分的,具体的物理分法可以有多种组合。

中间件作为构造三层结构应用系统的基础平台,提供了以下主要功能:

负责客户机与服务器、服务器与服务器间的连接和通信;

实现应用与数据库的高效连接;

提供一个三层结构应用的开发、运行、部署和管理的平台。

这种三层结构在层与层之间相互独立,任何一层的改变不会影响其它层的功能。

在B/S体系结构系统中,用户通过浏览器向分布在网络上的许多服务器发出请求,服务器对浏览器的请求进行处理,将用户所需信息返回到浏览器。

而其余如数据请求、加工、结果返回以及动态网页生成、对数据库的访问和应用程序的执行等工作全部由WebServer完成。

随着Windows将浏览器技术植入操作系统内部,这种结构已成为当今应用软件的首选体系结构。

显然B/S结构应用程序相对于传统的C/S结构应用程序是一个非常大的进步。

B/S结构的主要特点是分布性强、维护方便、开发简单且共享性强、总体拥有成本低。

但数据安全性问题、对服务器要求过高、数据传输速度慢、软件的个性化特点明显降低,这些缺点是有目共睹的,难以实现传统模式下的特殊功能要求。

例如通过浏览器进行大量的数据输入或进行报表的应答、专用性打印输出都比较困难和不便。

此外,实现复杂的应用构造有较大的困难。

虽然可以用ActiveX、Java等技术开发较为复杂的应用,但是相对于发展已非常成熟C/S的一系列应用工具来说,这些技术的开发复杂,并没有完全成熟的技术工具供使用。

系统开发的技术

MVC理论基础

MVC架构是"

Model-View-Controller"

的缩写,中文翻译为"

模型-视图-控制器"

MVC应用程序总是由这三个部分组成。

Event(事件)导致Controller改变Model或View,或者同时改变两者。

只要Controller改变了Models的数据或者属性,所有依赖的View都会自动更新。

类似的,只要Controller改变了View,View会从潜在的Model中获取数据来刷新自己。

MVC架构是一种架构,其实需要其他模式协作完成。

而Struts只实现了MVC的View和Controller两个部分,Model部分需要开发者自己来实现,Struts2在整合了Struts和webwork后,终于彻底实现了MVC的架构。

视图(View):

代表用户交互界面,对于Web应用来说,可以概括为HTML界面,但有可能为XHTML、XML和Applet。

随着应用的复杂性和规模性,界面的处理也变得具有挑战性。

一个应用可能有很多不同的视图,MVC设计模式对于视图的处理仅限于视图上数据的采集和处理,以及用户的请求,而不包括在视图上的业务流程的处理。

业务流程的处理交予模型(Model)处理。

比如一个订单的视图只接受来自模型的数据并显示给用户,以及将用户界面的输入数据和请求传递给控制和模型。

模型(Model):

就是业务流程/状态的处理以及业务规则的制定。

业务流程的处理过程对其它层来说是黑箱操作,模型接受视图请求的数据,并返回最终的处理结果。

业务模型的设计可以说是MVC最主要的核心。

目前流行的EJB模型就是一个典型的应用例子,它从应用技术实现的角度对模型做了进一步的划分,以便充分利用现有的组件,但它不能作为应用设计模型的框架。

它仅仅告诉你按这种模型设计就可以利用某些技术组件,从而减少了技术上的困难。

对一个开发者来说,就可以专注于业务模型的设计。

MVC设计模式告诉我们,把应用的模型按一定的规则抽取出来,抽取的层次很重要,这也是判断开发人员是否优秀的设计依据。

抽象与具体不能隔得太远,也不能太近。

MVC并没有提供模型的设计方法,而只告诉你应该组织管理这些模型,以便于模型的重构和提高重用性。

我们可以用对象编程来做比喻,MVC定义了一个顶级类,告诉它的子类只能做这些,但没法限制能做这些。

这点对编程的开发人员非常重要。

业务模型还有一个很重要的模型那就是数据模型。

数据模型主要指实体对象的数据保存(持续化)。

比如将一张订单保存到数据库,从数据库获取订单。

我们可以将这个模型单独列出,所有有关数据库的操作只限制在该模型中。

控制(Controller)可以理解为从用户接收请求,将模型与视图匹配在一起,共同完成用户的请求。

划分控制层的作用也很明显,它清楚地告诉你,它就是一个分发器,选择什么样的模型,选择什么样的视图,可以完成什么样的用户请求。

控制层并不做任何的数据处理。

模型、视图与控制器的分离,使得一个模型可以具有多个显示视图。

如果用户通过某个视图的控制器改变了模型的数据,所有其它依赖于这些数据的视图都应反映到这些变化。

因此,无论何时发生了何种数据变化,控制器都会将变化通知所有的视图,导致显示的更新。

这实际上是一种模型的变化-传播机制。

模型、视图、控制器三者之间的关系和各自的主要功能,如图2-1所示。

图2-1MVC组件类型的关系和功能

Struts2框架技术

Struts框架的核心是一个灵活的控制层,它基于以下标准技术,如:

JavaServlet、JavaBean、资源绑定、XML和各种JakartaCommons包。

虽然Struts2号称是一个全新的框架,但这仅仅是相对Struts1而言。

Struts2与Struts1相比,确实有很多革命性的改进,但它并不是新发布的新框架,而是在另一个赫赫有名的框架:

WebWork基础上发展起来的。

从某种程度上来讲,Struts2没有继承Struts1的血统,而是继承WebWork的血统。

或者说,WebWork衍生出了Struts2,而不是Struts1衍生了Struts2。

因为Struts2是WebWork的升级,而不是一个全新的框架,因此稳定性、性能等各方面都有很好的保证:

而且吸收了Struts1和WebWork两者的优势,因此,是一个非常值得期待的框架。

Struts2框架是当前Web开发中最为流行的设计和开发框架,借助于Struts2框架,开发人员可以把主要精力集中在如何解决实际业务处理上,而不需要在页面和业务代码之间的处理上花费很多时间。

Struts2开发框架遵循MVC设计模式,这样可以将整个工程分为3个相对独立而又能协同工作的组成部分(包括模型、视图、控制器),开发人员可以从负责的页面代码、业务代码和控制流程中具体分工。

1)核心控制器:

FilterDispatcher

FilterDispatcher是Struts2框架的核心控制器,该控制器作为一个Filter运行在Web应用中,它负责拦截所有的用户请求,当用户请求到达时,该Filter会过滤用户请求。

如果用户请求以action结尾,该请求将被转入Struts2框架处理。

Struts2框架获得了*.action请求后,将根据*.action请求的前面部分决定调用哪个业务逻辑组件,例如,对于login.action请求,Struts2调用名为login的Action来处理该请求。

Struts2应用中的Action都被定义在struts.xml文件中,在该文件中定义Action时,定义了该Action的name属性和class属性,其中name属性决定了该Action处理哪个用户请求,而class属性决定了该Action的实现类。

Struts2用于处理用户请求的Action实例,并不是用户实现的业务控制器,而是Action代理;

因为用户实现的业务控制器并没有与ServletAPI耦合,显然无法处理用户请求。

而Struts2框架提供了系列拦截器,该系列拦截器负责将HttpServl

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 初中教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2