邮件管理系统毕业论文.docx
- 文档编号:28306984
- 上传时间:2023-07-10
- 格式:DOCX
- 页数:42
- 大小:973.68KB
邮件管理系统毕业论文.docx
《邮件管理系统毕业论文.docx》由会员分享,可在线阅读,更多相关《邮件管理系统毕业论文.docx(42页珍藏版)》请在冰豆网上搜索。
邮件管理系统毕业论文
摘要
电子邮件的使用简易,投递迅速,收费低廉,易于保存,全球畅通无阻,使得电子邮件被广泛地应用,当前流行的各大邮件系统除了最主要的收发信件之外,功能越来越复杂,但是人们平常真正用到的功能很少,很多功能尤其对于那些计算机知识相对缺乏的人来说,更显得太过于华丽而不太实用。
鉴于此,开发一个集收、发、管理为一体的功能相对简单实用的电子邮件系统可以大大方便我们对邮件的收发和管理。
基于B/S架构的邮件管理系统以mySQL数据库,使用JAVA技术开发而成。
是一款融合了邮件发送、邮件接收、个人邮件管理等功能的计算机软件系统。
其中邮件发送和接收是系统的两大特色,用户可以发送指定帐户的邮件,并且可以接收到指定帐户上的邮件,这些帐户都是用户可以在本邮件管理系统中设置的,同时,还可以将自己发送的邮件保存到发件箱供以后查看。
本论文以软件工程理论为指导,论述了系统的设计构想,分析了系统开发各个阶段的主要任务,并详细阐述了系统各个功能模块的实现原理及解决方案。
是对系统开发过程的详细说明与总结。
关键词:
MySQL,Java,SMTP;POP3
Abstract
Email has been increasingly popular these days since it is simple, instantaneous, globally used, cheap and easy to save. The current mainstream email systems embrace more and more complicated functions, far beyond the basics like sending and receiving mails. However, people do not really use all these fancy and impractical functions, especially for those who know few about computers. Therefore, it would be of great users’ convenience to develop a simple, practical and user-friendly email system, which integrates sending and receiving functions with email managemenThe Web based internet email system, which uses the MYSQLdatabase and is developed by JAVA technology, is one computer software system that combines sending and receiving emails with personal emails management. Its main features include sending and replying emails. Users can send and receive mails of pre-setting mail accounts, and save and view the sent emails later. The present paper, with software engineering theory as guidance, discussed the system design concept and analysis the main task of the various stages of system development and introduced the system principle and solutions of the various functional modules. The paper summarized the system development process.
Key Words :
MYSQL ;SMTP;POP3;JAMES
目录
1绪论
1.1课题研发背景
电子邮件(简称E-mai1)又称电子信箱,它是用户或用户组之间通过计算机网络收发信息的服务。
目前,电子邮件是互联网上使用最为广泛的功能,现已成为公司惊喜顾客服务的强大工具,成为网络用户之间最快捷方便,可靠且成本低廉的现代化通讯手段,也是互联网上使用最广泛、最受欢迎的服务之一。
并且现在很多高校也采用邮件方式教学和收发作业。
目前互联网上百分之六十以上的活动都与电子邮件有关。
尤其如今环境资源遭到破坏,提倡环保的主题下。
不论是企业还是个人都应该尽量节省纸张,采用邮件的形式来传递信息,这样不仅可以环保同时也提高了效率和安全性。
而邮件管理系统来处理用户收发电子邮件及管理邮件等基本操作是必不可少的。
1.2选题的意义
当前流行的各大邮件客户端软件的除了最主要的收发信件之外,功能越来越复杂,但是人们平时真正用到的功能很少,很多功能尤其对计算机知识缺乏的人来说,更加显得过于华丽而不太实用。
对于用户来说一款简单,方便,快捷的邮件系统将会在很大程度上为用户提供满意的服务,制作一款能够满足通用户需求的邮件系统是每个设计者所追求的目标。
因此希望通过本次设计完成一个简单的邮件系统,同时能实现邮件用户登录管理及邮件删除等功能,开发这个各种功能相对简单实用的邮件客户端程序。
简化了很多不必要的功能,解决了小型企业和集体不能在同一平台通信交流的问题。
2可行性分析
可行性分析也称可行性研究,是决策部门在采取一项重大改革或投资行动之前,对该项目的必要性和可能性进行分析与论证的活动。
可行性分析已被广泛应用于新产品开发、基建、工业企业、交通运输、商业设施等项目投资的多个领域。
在展开一项开发行动之前,必须对用户提出的目标的必要性和可能性进行必要的论证。
可行性分析是在进行初步调查后所进行的对系统开发必要性和可能性的研究,所以也称为可行性研究。
信息系统也应从技术可行性,经济可行性和社会可行性三方面来论证。
2.1经济可行性分析
基于java的电子邮件系统是基于Java的而Java是开源免费的,另外该系统所采用的Tomcat服务器、James邮件服务器以及MySQL数据库服务器都是开源免费的,这样在成本上势必会降低很多。
现行的公司大型的邮件系统所提供的功能基本很多都是很少用到的,花大量的成本去开发很少用到的功能对于一般的小公司来说是完全没有必要的。
基于java的电子邮件系统是只开发了与电子邮件有关的基本功能,这样即减少了开发成本又提高了开发效率。
对于一般的小型公司来说该系统经济上是完全可行的。
2.2技术可行性
技术可行性分析主要包括硬件和技术等几个方面,下面分别对这几方面进行简单的分析:
2.2.1Struts2简介
Struts2是Struts的下一代产品。
是在Struts和WebWork的技术基础上进行了合并,全新的Struts2框架。
其全新的Struts2的体系结构与Struts1的体系结构的差别巨大。
Struts2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全脱离开,所以Struts2可以理解为WebWork的更新产品。
因为Struts2和Struts1有着太大的变化,但是相对于WebWork,Struts2只有很小的变化。
2.2.2Spring简介
Spring是一个开源框架,它由RodJohnson创建。
它是为了解决企业应用开发的复杂性而创建的。
Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。
然而,Spring的用途不仅限于服务器端的开发。
从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。
Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。
轻量——从大小与开销两方面而言Spring都是轻量的。
完整的Spring框架可以在一个大小只有1MB多的JAR文件里发布。
并且Spring所需的处理开销也是微不足道的。
此外,Spring是非侵入式的:
典型地,Spring应用中的对象不依赖于Spring的特定类。
控制反转——Spring通过一种称作控制反转(IoC)的技术促进了松耦合。
当应用了IoC,一个对象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象。
你可以认为IoC与JNDI相反——不是对象从容器中查找依赖,而是容器在对象初始化时不等对象请求就主动将依赖传递给它。
面向切面——Spring提供了面向切面编程的丰富支持,允许通过分离应用的业务逻辑与系统级服务(例如审计(auditing)和事务(transaction)管理)进行内聚性的开发。
应用对象只实现它们应该做的——完成业务逻辑——仅此而已。
它们并不负责(甚至是意识)其它的系统级关注点,例如日志或事务支持。
容器——Spring包含并管理应用对象的配置和生命周期,在这个意义上它是一种容器,你可以配置你的每个bean如何被创建——基于一个可配置原型(prototype),你的bean可以创建一个单独的实例或者每次需要时都生成一个新的实例——以及它们是如何相互关联的。
然而,Spring不应该被混同于传统的重量级的EJB容器,它们经常是庞大与笨重的,难以使用。
框架——Spring可以将简单的组件配置、组合成为复杂的应用。
在Spring中,应用对象被声明式地组合,典型地是在一个XML文件里。
Spring也提供了很多基础功能(事务管理、持久化框架集成等等),将应用逻辑的开发留给了你。
所有Spring的这些特征使你能够编写更干净、更可管理、并且更易于测试的代码。
它们也为Spring中的各种模块提供了基础支持。
2.2.3Hibernate简介
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。
Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。
Hibernate体系结构如图2-2所示:
图2-1Hibernate体系结构
2.2.4NetBeans开发工具简介
NetBeans包括开源的开发环境和应用平台,NetBeansIDE可以使开发人员利用Java平台能够快速创建Web、企业、桌面以及移动的应用程序,NetBeansIDE已经支持PHP、Ruby、JavaScript、Groovy、Grails和C/C++等开发语言。
NetBeans项目由一个活跃的开发社区提供支持,NetBean开发环境提供了丰富的产品文档和培训资源以及大量的第三方插件。
NetBeans是开源软件开发集成环境,是一个开放框架,可扩展的开发平台,可以用于Java、C/C++,PHP等语言的开发,本身是一个开发平台,可以通过扩展插件来扩展功能。
在NetBeansPlatform平台中,应用软体是用一系列的软体模组(ModularSoftwareComponents)建构出来。
而这些模组是一个jar档(JavaArchiveFile)它包含了一组Java程式的类别而它们实作全依据依NetBeans定义了的公开介面以及一系列用来区分不同模组的定义描述档(ManifestFile)。
有赖於模组化带来的好处,用模组来建构的应用程式可只要加上新的模组就能进一步扩充。
由於模组可以独立地进行开发,所以由NetBeans平台开发出来的应用程式就能利用着第三方软件,非常容易及有效率地进行扩充。
2.2.5MySQL简介
MySQL是一个关系型数据库管理系统,由瑞典MySQLAB公司开发,目前属于Oracle公司。
Mysql是最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(RelationalDatabaseManagementSystem:
关系数据库管理系统)应用软件之一。
MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。
MySQL软件采用了双授权政策(本词条“授权政策”),它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。
由于其社区版的性能卓越,搭配PHP和Apache可组成良好的开发环境。
2.2.6Tomcat服务器简介
Tomcat是一个免费的开源的Serlvet容器,它是Apache基金会的Jakarta项目中的一个核心项目,由Apache,Sun和其它一些公司及个人共同开发而成。
由于有了Sun的参与和支持,最新的Servlet和Jsp规范总能在Tomcat中得到体现。
Tomcat是稳固的独立的Web服务器与ServletContainer,不过,其Web服务器的功能则不如许多更健全的Web服务器完整,如ApacheWeb服务器(举例来说,Tomcat没有大量的选择性模块)。
不过,Tomcat是自由的开源软件,而且有许多高手致力于其发展。
Tomcat是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。
对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache服务器,可利用它响应对HTML页面的访问请求。
实际上Tomcat部分是Apache服务器的扩展,但它是独立运行的,所以当你运行Tomcat时,它实际上作为一个与Apache独立的进程单独运行的。
2.2.7pop3协议简介
POP3(PostOfficeProtocol3)即邮局协议的第3个版本,它是规定个人计算机如何连接到互联网上的邮件服务器进行收发邮件的协议。
它是因特网电子邮件的第一个离线协议标准,POP3协议允许用户从服务器上把邮件存储到本地主机(即自己的计算机)上,同时根据客户端的操作删除或保存在邮件服务器上的邮件,而POP3服务器则是遵循POP3协议的接收邮件服务器,用来接收电子邮件的。
POP3协议是TCP/IP协议族中的一员,由RFC1939定义。
本协议主要用于支持使用客户端远程管理在服务器上的电子邮件。
2.2.8SMTP简介
SMTP是一种TCP协议支持的提供可靠且有效电子邮件传输的应用层协议。
SMTP是建立在TCP上的一种邮件服务,主要用于传输系统之间的邮件信息并提供来信有关的通知。
SMTP独立于特定的传输子系统,且只需要可靠有序的数据流信道支持。
SMTP重要特性之一是其能跨越网络传输邮件,即“SMTP邮件中继”。
通常,一个网络可以由公用互联网上TCP可相互访问的主机、防火墙分隔的TCP/IP网络上TCP可相互访问的主机,及其它LAN/WAN中的主机利用非TCP传输层协议组成。
使用SMTP,可实现相同网络上处理机之间的邮件传输,也可通过中继器或网关实现某处理机与其它网络之间的邮件传输。
在这种方式下,邮件的发送可能经过从发送端到接收端路径上的大量中间中继器或网关主机。
域名服务系统(DNS)的邮件交换服务器可以用来识别出传输邮件的下一条IP地址。
从以上经济以及技术方面分析得出结论该系统能够完成并实现相应的功能。
3系统需求分析
3.1功能需求分析
电子邮件系统主要功能是普通用户收发电子邮件的,本系统的使用者角色只有普通用户。
用户要求系统的基本功能有用户在没有注册的情况下可以使用本系统在线注册,注册完成之后用户可以使用新的账户进行登录。
如果用户密码丢失用户能过通过注册时填写的用户信息来找回密码。
(1)用户对联系人的要求。
用户登录系统之后能够查看所有的联系人,并且能够增加、删除、修改联系人信息。
为了管理联系人方便,要求对联系人进行分组,同时分组也要能够进行添加、删除、修改等基本的操作。
为了能够迅速的查找到联系人用户要求能够快速的搜索联系人。
(2)用户对自己信息管理的要求。
用户应该能够在登录系统之后修改自己的基本信息例如用户昵称、密码等。
(3)用户对发送电子邮件的要求。
系统应该能够进行简单的电子邮件的发送,同时还要能发送复杂一点的电子邮件例如带有附件、邮件内容为HTML格式的邮件等。
同时应该能够快速的添加收件人等。
(4)用户对收取电子邮件的基本要求。
在收取电子邮件的时候用户应该能够查看到某个邮件夹下面的电子邮件,然后用户选择查看的电子邮件。
当查看电子邮件的时候能够显示邮件的基本内容,同时还能够下载带有附件的电子邮件附件。
通过对以上信息分析得出用户能够通过该系统进行的活动,如图3-1所示。
图3-1用户简单用例图
(1)找回密码:
当用户忘记登录密码的时候可以通过该功能找回登录密码。
(2)注册新用户:
用户可以使用该系统注册一个新的系统用户。
(3)管理邮件信息:
用户可以通过该系统查看和发送电子邮件。
(4)管理联系人信息:
通过该功能用户可以方便的管理自己的联系人信息。
(5)管理个人信息:
该功能可以使用户方便的修改自己的个人信息。
通过对于用户功能需求进一步分析可以得出用户详细的用例图如图3-2所示。
图3-2用户详细用例图
(1)管理个人信息:
可以分为查找个人信息和修改个人信息,查找个人信息使得用户可以方便的查看个人信息。
修改个人信息使用户可以修改自己的个人信息。
(2)管理邮件信息:
可以分为删除电子邮件、发送新邮件和查看电子邮件。
当用户需要删除某一封电子邮件的时候可以使用删除电子邮件功能,同时用户也可以发送新的电子邮件给其他用户。
用户也可以查看电子邮件以方便用户查看电子邮件的具体内容。
(3)管理联系人信息:
联系人的信息管理包含删除、修改、添加和查询具体的联系人信息。
删除联系人可以使用户对于不需要的联系人信息进行删除,添加联系人则是当用户需要添加联系人的时候可以使用添加联系人功能。
对于需要修改的联系人则可使用修改联系人信息的功能。
对于不太清楚的联系人信息用户也可以使用查询功能快速的定位到某个联系人。
3.2性能需求分析
电子邮件系统主要的用户群是普通用户,所以在设计上必须遵循以下几点准则:
(1)易用性:
电子邮件系统可以像使用留言电话一样,在自己方便的时候处理记录下来的请求,通过电子邮件可以方便地传送文本信息、图像文件、报表和计算机程序。
(2)快捷性:
当用户发送完一封电子邮件的时候收件人可以快速的收取到用户发送的电子邮件。
而且当电子邮件发送失败的时候系统也应该给出相应的提示信息。
以确保电子邮件能够快速的发送到收件人的邮箱中。
(3)安全性:
电子邮件相当于过去的信件,现在的电子邮件就相当于在网络中传输的信件,由于网络的不安全电子邮件在传送过程中必须确保电子邮件的安全。
再设计电子邮件系统的时候应该充分考虑到电子邮件的安全问题。
(4)实时性:
由于电子邮件的用户范围很广泛以及用户使用电子邮件系统的时间又具有不确定性,所以电子邮件系统服务器必须在时间上满足全天候的启动服务。
以确保电子邮件系统用户实时的发送电子邮件。
3.3数据库需求分析
本系统用于存入数据库的信息只有用户的基本信息和联系人的基本信息。
至于邮件的具体存储信息则是由James邮件系统负责完成邮件信息的存储。
对于用户来说用户需要登录系统时用户需要输入用户账号和用户密码。
密码存储到数据库中是经过加密过后的密码。
存取密码的时候要存取相应的密码加密算法。
(1)用户在填写基本信息的时候要求填入用户别名、性别、安全邮箱地址、安全问题、安全问题答案、家庭住址、电话号码、备注等基本的与用户有关的信息。
当用户忘记登录密码的时候用户可以通过密码找回邮箱或者安全问题重新找回或设置登录密码。
(2)用户的联系人分组要有分组的名称。
同时在填写联系人的时候要填写联系人的姓名、电话、电子邮件地址、家庭住址、生日、性别、备注等基本信息。
(3)一个用户可以拥有多个联系人分组一个联系人分组同时拥有多个联系人。
一个用户登录信息要对有一个用户基本信息与之相对应。
经过对系统功能的数据分析和总结,我设计出了如下所示的数据项和数据结构:
用户登录信息:
用户账号、用户密码、密码加密算法、用户是否是被禁用等。
用户基本信息:
昵称、性别、电话号码、家庭住址、安全问题、安全问题答案、找回密码电子邮箱地址、备注等信息。
联系人分组信息:
分组名称。
联系人基本信息:
包括联系人名称、联系人电话号码、联系人家庭住址、联系人电子邮件地址、联系人生日、联系人性别、备注等。
从本系统中规划出的实体有:
用户登录信息、用户基本信息、用户分组信息、联系人基本信息。
通过对数据库基本信息和用户的基本需求进行分析可以得出系统的实体之间关系的E-R图如图3-3所示。
图3-3实体关系E-R图
用户登录信息实体属性图如图3-4所示。
图3-4用户登录信息实体属性图
用户基本信息实体属性图如图3-5所示。
图3-5用户基本信息实体属性图
联系人分组信息实体属性图如图3-6所示。
图3-6联系人分组信息实体属性图
联系人信息实体属性图如图3-7所示。
图3-7联系人信息实体属性图
4概要设计
4.1逻辑结构设计
逻辑结构设计的任务是将概念结构设计阶段设计好的E-R图转化为对应的关系模式,从而完成逻辑结构设计,为数据库的实现作准备。
本系统的数据库使用的是MySQL数据库,建造的数据库名称为email。
用户登录关系模式(主键用下划线标出):
jamesuser(name,alg,enable,password,version)
用户基本信息关系模式:
userinfo(id,address,alias,answer,gender,mark,phoneNum,pwdEmail,question,user_id)
联系人分组信息关系模式:
usergroup(id,name,user_name)
联系人信息关系模式:
linkman(id,address,birthday,emailAdd,gender,mark,name,phoneNum,group_id)
4.2系统功能结构设计
电子邮件系统的主要使用人员是普通用户,通过对系统需求的分析可以获得以下用户与系统之间的交互行为。
(1)用户登录系统。
(2)注册新用户。
(3)用户找回密码。
(4)用户添加联系人信息。
(5)用户修改联系人信息。
(6)用户删除联系人信息。
(7)用户查询联系人信息。
(8)用户修改个人信息。
(9)用户添加联系人分组信息。
(10)用户修改联系人分组信息。
(11)用户删除联系人分组信息。
(12)用户发送电子邮件。
(13)用户查看电子邮件。
(14)用户删除电子邮件。
(15)用户搜索电子邮件。
系统功能结构图如图4-1所示。
图4-1基于java的电子邮件系统功能结构图
4.2.1用户登录邮件系统的工作流程
(1)用户希望通过电子邮件系统进行某一项操作。
(2)用户登录系统,在登录页面输入自己的账号和密码并提交。
(3)系
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 邮件 管理 系统 毕业论文