参考邮箱系统的设计与实现.docx
- 文档编号:5044402
- 上传时间:2022-12-12
- 格式:DOCX
- 页数:38
- 大小:112.03KB
参考邮箱系统的设计与实现.docx
《参考邮箱系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《参考邮箱系统的设计与实现.docx(38页珍藏版)》请在冰豆网上搜索。
参考邮箱系统的设计与实现
本科生毕业论文(设计)
邮箱系统的设计与实现
姓 名
学 号
专 业
指导教师
2011年5月20日
摘要
近年来,随着互联网在全球范围内的发展和普及,人们可以方便地共享各种各样的网络资源。
与此同时,工作和生活的快节奏使得朋友以及同事之间的信息不能即时的交互,普通的书信方式已远远不能满足人类的需求。
因此,一款快捷、方便的电子邮件系统则成为信息交互中最重要的一环。
本文分析了电子邮箱的现状和存在的问题,讨论了邮箱系统的设计与开发,阐述了邮箱系统的功能结构,并据此设计了一个以JAVA为主要编程语言的基于MVC模式的邮箱系统。
它是一个模拟网易电子邮箱的系统,其中的搭建过程包括JDK1.6、Eclipse3.6、Tomcat6.0和Oracle10G的安装和环境变量的配置等。
邮箱客户端设计部分采用JAVA语言和Oracle数据库,实现了收信箱、发信箱、写信息、邮件群发、客户管理、员工管理、信息和常用语的管理、发送及接收短信和操作员管理与更改口令的功能,解决了如何设计开发邮箱的功能模块并实现系统的主要功能;如何在本地测试和修改程序遇到的bug,如何实现对后台数据的管理操作。
关键词:
邮箱系统;Java;MVC模式
Abstract
Inrecentyears,withthedevelopmentandpopularizationoftheinternetintheworldwide,peoplecansharevarietiesofnetworkresourcesconveniently.While,thefastpaceofworkandlifemakefriendsandcolleaguescannotcommunicateimmediately,andtheordinarywaye-mailcannotmeethumanneeds.Therefore,afastandconveniente-mailhasplayedthemostimportantroleintheinformationexchange.Firstly,thisarticleanalyzesthecurrentsituationandexistingproblems,thispapermainlydiscussesthedesignanddevelopmentofmailsystem,itexplainsthemailsysteminprinciple,functionandstructureandsystemdevelopment.BasedonMVCmodel,themainlyprogramminglanguageisJava.Thendescribesasimulation,afastandconveniente-mailsystem.Frameandconfigurationofthelocalenvironmentanddesignoftwomajormailclientsareincluded.EnvironmentconstructioninvolvestheinstallationofJDK1.6,Eclipse3.6,tomcat6.0andOracle10G,andtheconfigurationofenvironmentvariables.E-mailclientsadoptsJAVAlanguageandOracledatabase,themainlytocarryoutthefourcorerequirementswhichareelectricin-box,out-box,mailmanagement(view,delete,permanentdelete),themailinglistandnotepad.Thisthesisaddressesthefollowingissues:
howtoConstructionofthelocaldevelopmentenvironment,howtodesignthemainmoduleandtherealizationofsendingandreceivingE-mail,management,themailinglist,notepadandsomeotherfunctions,howtoimplementofthetestprogramlocally,modificationofthebugmet,howtorealizetheoperationofbackgrounddata.
KeyWords:
E-mailsystem,JAVA,MVCpattern
1引言
在Internet迅猛发展的今天,电子邮件已经成为信息交换的重要载体,是目前Internet上最常用的功能。
而对于这个给我们带来巨大方便的产物在这个世界上发出的第一封电子邮件是什么呢?
第一种说法:
1969年10月世界上第一封电子邮件是由计算机科学家LeonardK.教授发给他的同事的一条简短消息,这条消息只有两个字母:
“LO”。
LeonardK.教授因此被称为电子邮件之父。
LeonardK.教授解释,“当年我试图通过一台位于加利福尼亚大学的计算机和另一台位于旧金山附近斯坦福研究中心的计算机取得联系。
我们所做的事情就是从一台计算机登录到另一台机器。
当时登录的办法就是键入L-O-G。
于是我键入L,然后问对方:
‘收到L了吗?
’对方回答:
‘收到了。
’然后依次键入O和G。
还未等到对方收到G的确认回答,系统就瘫痪了。
所以第一条网上信息就是‘LO’,意思是‘你好!
我完蛋了’。
当然还有另一个说法是:
1971年,美国国防部资助的阿帕网正在如火如荼的进行当中,一个非常尖锐的问题出现了:
参加此项目的科学家们在不同的地方做着不同的工作,但是却不能很好地分享各自的研究成果。
原因很简单,因为大家使用的是不同的计算机,每个人的工作对别人来说都是没有用的。
他们迫切需要一种能够借助于网络在不同的计算机之间传送数据的方法。
为阿帕网工作的麻省理工学院博士RayTomlinson把一个可以在不同的电脑网络之间进行拷贝的软件和一个仅用于单机的通信软件进行了功能合并,名之为SNDMSG(即SendMessage)。
为了测试,他使用这个软件在阿帕网上发送了第一封电子邮件,收件人是另外一台电脑上的自己。
尽管这封邮件的内容连Tomlinson本人也记不起来了,但那一刻仍然具备了十足的历史意义:
电子邮件诞生了。
Tomlinson选择"@"符号作为用户名与地址的间隔,因为这个符号比较生僻,不会出现在任何一个人的名字当中,而且这个符号的读音也有着"在"的含义。
阿帕网的科学家们以极大的热情欢迎了这个石破天惊般的创新。
他们天才的想法及研究成果,现在可以用最快的--快得难以觉察的速度来与同事共享了。
现在他们中的许多人回想起来,都觉得阿帕网所获得的巨大成功当中,电子邮件功不可没。
因此不管怎样,从那一封电子邮件的发出就注定将要改变信息传递的格局,注定要出现一种给我们带来更加方便快捷的信息传递方式。
2绪论
随着网络的普及、信息化的快速发展,随之而来的是人们的生活、工作节奏的加快。
而电子邮箱(E-MAIL)是通过网络电子邮局为网络客户提供的网络交流电子信息空间。
电子邮箱具有存储和收发电子信息的功能,是因特网中最重要的信息交流工具。
人们可以在任何地方任何时间收发信件,从而解决了时空的限制,大大提高了工作效率,为办公自动化及商业活动等提供了很大便利。
2.1课题背景
众所周知电子邮件在人们的生活和工作中已被广泛应用,并出现了取代书纸信件的势头。
由于电子邮件在现代生活中的重要性,因此各种各样的电子邮箱系统层出不穷,其中当数网易电子邮箱功能最为完善、快速和安全。
而目前企业内用的邮箱主要为out-look,只能收发邮件,远远不能满足企业对员工和客户的信息管理信息,因此为了提高企业的竞争力,同时也为了方便了解客户及员工,帮助企业解决企业内部、企业与外部沟通难、信息不能及时传播等问题。
企业需要提供有邮件群发、短信发送、接收等功能的邮件系统。
在这样的背景下,产生了模拟网易邮箱来开发的电子邮箱系统,又称:
企业快信。
2.2E-mail的介绍及分析
E-mail像普通的邮件—样,也需要地址。
它与普通邮件的区别在于它是电子地址。
所有在Internet之上有信箱的用户都有自己的一个或几个Emailaddress,并且这些Emailaddress都是唯一的。
邮件服务器就是根据这些地址将每封电子邮件传送到各个用户的信箱中,Emailaddress就是用户的信箱地址。
就象普通邮件一样,你能否收到你的E-mail,取决于你是否取得了正确的电子邮件地址。
—个完整的Internet邮件地址由以下两个部分组成,格式如下:
中间用—个表示“在”(at)的符号“@”分开,符号的左边是对方的登录名,右边是完整的主机名,它由主机名与域名组成。
其中,域名由几部分组成,每一部分称为一个子域(Subdomain),各子域之间用圆点“.”隔开,每个子域都会告诉用户一些有关这台邮件服务器的信息。
电子邮件改变了人们的生活,改变了传统的安全技术,提高了效率。
特别是对公司之间的信息传送大大超过了原有信件的传送速度。
而在各大企业和学校,还未必尝试对邮件系统的开发实践,本系统旨在对邮件系统的一次深入的了解探究其运行机制,实现能够对邮件收发和邮件管理的两大核心需求,熟练运用系统发送和接收邮件等,帮助我们对电子邮件技术有更深入的了解。
2.3可行性分析
可行性研究的目的是用最小的代价在尽可能的时间内确定问题是否能够解决。
2.3.1经济上可行性
现在计算机的价格已经十分低廉,但性能却有了十足的进步。
而本系统的开发,节省了过去传统信件的传递时间,从而大大减少了人力物力的资源,增加了传递信息量。
为此主要表现在以下几个方面:
第一,本系统的运行可以使用户之间的信息传递畅通无阻;
第二,本系统的运行可以节省许多资源;
第三,本系统的运行可以提高信息传递效率。
所以,本系统在经济上是可行的。
2.3.2技术上可行性
本系统的开发采用一个支持多线程的数据库Oracle10G,适用于于一般的个人用户和中小型企业的数据量需求。
学校校园网的建设也为新系统服务器/客户端的结构提供了硬件的支持。
使用struts作为系统开发的框架,它提供完善的指令控制语句、类与对象的支持,给开发高性能系统提供了保障,满足了客户要求的系统,保证了代码的模块化要求,而代码模块化的提高则有利于以后对新系统的扩展与修改。
综上所述,本系统的设计与开发在技术上和硬件设备上的条件都是满足的,因此,它在技术上是可行的。
2.3.3运行上可行
本系统为一个小型的邮箱系统,所耗费的资源非常的小,学校的电脑无论是硬件还是软件都能够满足条件,因此,本系统在运行上是可行的。
2.4使用的开发平台
表2-1开发平台及环境变量配置表
开发平台
JAVA虚拟机:
JDK1.6
服务器
apache-tomcat-6.0.18
数据库:
Oracle10G
PLSQL
开发工具:
Eclipse3.6
网页美化工具:
CS5
系统:
Window7
环境变量配置
JAVA_HOME:
C:
\ProgramFiles\Java\jdk1.6
CLASSPATH:
.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar
Path:
%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;E:
\app\mengzi\product\11.1.0\db_1\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:
\ProgramFiles\CommonFiles\ThunderNetwork\KanKan\Codecs
2.5开发语言和数据库简介
系统开发选用JSP&Servlet和Oracle作为前台开发工具和后台数据库。
2.5.1Java程序设计语言简介
Java是一种解释型的、面向对象的编程语言,它通常被描述为“是一种简单、面向对象、分布式、解释、健壮、安全、结构中立、可移植、高效能、多线程、动态的语言”,是当今最流行的软件开发语言之一。
它的应用范围特别广泛,具体可应用在企业信息化中,特别是在企业级的应用领域,如通信、金融、电子政务及办公自动化、嵌入式设备及消费类电子产品、太空领域等。
而Sun公司推出的Java2&J2EE则使得Java具有更广泛的用途,适用于各种应用开发,尤其是网络应用,网络服务,嵌入式系统等。
2.5.2JSP&Servlet简介
JSP(JAVASERVERPAGES)是由SunMicrosystems公司倡导和许多公司参与一起建立的一种动态网页技术标准,其在动态网页的建设中有着强大而特别的功能。
Servlet是一种独立于平台和协议的服务器端的Java应用程序,可以生成动态的Web页面。
它担当Web浏览器与其他HTTP客户程序发出请求,与HTTP服务器上的数据库或应用程序之间的中间层。
2.5.3Oracle数据库简介
Oracle系统,即是以Oracle关系数据库为数据存储和管理作为构架基础构建出的数据库管理系统。
Oracle是世界上第一个支持SQL语言的商业数据库,定位于高端工作站以及作为服务器端的小型计算机,如IBMP系列服务器、HP的Integraty服务器、SunFire服务器。
Oracle公司的整个产品线包括数据库服务器、企业商务应用套件、应用开发和决策支持工具。
3系统总体分析和设计
本章从当今主流电子邮件系统分析、程序的结构流程图、系统结构和软件架构四个方面对该平台进行了总体分析说明。
环境搭建之后,实现了电子邮箱的收信箱、发信箱、写信息、邮件群发、客户管理、员工管理、信息和常用语的管理、发送及接收短信和操作员管理、更改口令等主要功能。
3.1当今主流电子邮件系统分析
3.1.1电子邮件工作流程简介
电子邮件由注册用户编写,并输入接收这封邮件的收件人,在需要的情况下,还可以发送附件等一些文件类型的信息。
而接收方在登录自己的邮箱后,便可以收取信息,如有附件等还可以收取附件文件。
3.1.2电子邮件系统具体需求分析
用户:
注册自己的邮箱账户,管理个人信息(包括修改密码,修改信息),管理好友信息(包括添加好友,删除好友,编辑好友),管理邮件信息(包括写邮件,发送邮件,删除邮件)。
3.1.3系统设计思想
采用现有的资源和先进的邮件系统开发方案,充分利用学校现有的资源,减少开发中的时间和财力、物力,提高系统开发的水平和应用效果。
系统满足了一般用户的需求,例如用户之间的简单信息传递等。
系统具备数据库维护功能,能够根据用户需求及时进行数据的添加、删除、修改等操作。
3.1.4系统设计分析
本系统适用于各个企业,其功能主要分为六大类:
用户个人信息管理:
用于对每个注册用户的个人信息查询等。
邮件信息管理:
用于用户发送的信息的归类,整理。
用户好友管理:
用于对用户好友的输入、修改、汇总。
本系统性能追求易于使用,具体有较高的扩展性和可维护性。
3.2程序结构流程图
图3-1电子邮箱结构流程图
3.3电子邮箱的功能概述
本电子邮箱的设计主要是为企业管理层开发的,方便他们办公及工作,以及掌握客户与员工的信息资料,管理员可以发群邮件、发短信等联系客户和员工,主要的功能如下:
(1)收信箱:
当管理员进入到电子邮箱的收信箱时,把所有收到的邮件列出来,这时管理员可以查看和删除邮件等。
(2)发信箱:
当管理员进入到电子邮箱的发信箱时,把所有发送的邮件列出来,这时管理员可以查看和删除邮件等
(3)写信息:
当进入写信息时,客户和员工列表会自动初始化,发送邮件时可以从客户、员工列表中选择要发送的目的邮箱账号,也可以手动输入emailaddress,再把自己的邮箱和密码填入文本框,发送时会检测账户和密码是否正确,也可以添加附件等。
(4)邮件群发:
当进入邮件群发时,客户和员工列表会自动初始化,发送邮件时可以从客户、员工列表中选择要发送的目的邮箱账号,也可以手动输入emailaddress,再把自己的邮箱和密码填入文本框,发送时会检测账户和密码是否正确,也可以添加附件等。
(5)客户管理:
当进入客户管理时,客户的信息会以table的形式列出来,然后管理员可以点击修改和删除来进行管理。
(6)员工管理:
当进入员工管理时,员工的信息会以table的形式列出来,然后管理员可以点击修改和删除来进行管理。
(7)信息类别管理:
信息类别的列表,可以对信息类别进行添加和删除等操作
(8)常用短语管理:
常用短语的列表,可以对常用短语进行添加、修改和删除等操作。
(9)发送短息:
通过网站来给员工发手机短信,通知公司内的通知和消息等。
(10)接收短信:
查看接收到的短信。
(11)查看发送日志:
查看发送过的日志。
(12)操作员管理:
管理员信息的显示,以及添加管理员的信息
(13)退出:
点击退出则退出系统,页面跳转到login.jsp页面。
(14)权限功能:
系统所有权限功能只赋予已注册的用户。
3.4数据库的概述及描述
数据库是信息存储的工具,电子邮箱共存储管理员表、信息类别表、邮件表、短信表、常用语表、客户表、员工表等主要数据表。
电子邮箱包括以下各表:
客户表(tb_customer):
(ID,name,address,postcode,area,mobileTel,email,bankNO,bankName,linkName)
信息类别表(tb_infoType):
(ID,name,)
管理员表(tb_manager):
(ID,name,pwd,state)
员工表(tb_personnel):
(ID,name,sex,birthday,school,education,specialty,place,mobileTel,email)
常用短语表(tb_shortInfo):
(ID,typeId,content)
短信表(tb_shortLatter):
(ID,toMan,content,fromMan,sendTime)
邮件表(tb_mail):
(ID,sender,receiver,title,sendTime,message)
下面描述其中几个表结构:
1.tb_customer表结构设计:
tb_customer表是存储客户的ID,用户名、密码等信息的表,主键是ID(自增),其逻辑结构设计如表3-1所示。
表3-1tb_customer表
字段名
字段描述
字段类型
是否主键
允许为空
Id
客户编号
integer
是
否
name
客户名
varchar
否
否
postcode
密码
varchar
否
否
Area
地址
varchar
否
否
mobileTel
手机
varchar
否
否
邮箱
varchar
否
否
bankNO
银行账号
varchar
否
否
bankName
银行名
varchar
否
否
linkName
个人主页
varchar
否
否
2.tb_manager表设计
tb_manager表是存储管理员的ID,用户名,密码和状态的表,主键是id(自增),其逻辑结构设计如表3-2所示。
表3-2tb_manager表
字段名
字段描述
字段类型
是否主键
允许为空
Id
用户编号
integer
是
否
name
用户名
varchar
否
否
Pwd
密码
varchar
否
否
stats
城市
varchar
否
否
3.tb_personnel表结构设计:
tb_personnel表是存储员工的(ID,name,sex,birthday,school,education,specialty,place,mobileTel,email)
ID,用户名、密码,性别,出生年月,毕业学校,手机,邮箱等信息的表,主键是ID(自增),其逻辑结构设计如表3-3所示。
表3-3tb_personnel表
字段名
字段描述
字段类型
是否主键
允许为空
Id
员工编号
integer
是
否
name
员工名
varchar
否
否
Sex
性别
varchar
否
否
birthday
出生日期
Date
否
否
school
毕业学校
varchar
否
否
education
学历
varchar
否
否
specialty
特长
varchar
否
否
place
地址
varchar
否
否
mobileTel
手机号码
varchar
否
否
邮箱地址
varchar
否
否
4.tb_shortLatter表结构设计:
tb_shortLatter用于存储短信的收信人,消息,发信人,发送时间等,其逻辑结构设计如表3-4所示。
表3-4tb_shortLatter表
字段名
字段描述
字段类型
是否主键
允许为空
ID
用户编号
integer
是
否
toMan
收信人
varchar
否
否
content
内容
varchar
否
否
fromMan
发信人
varchar
否
否
sendTime
发送时间
varchar
否
否
5.tb_mail表结构设计:
tb_mail用于存储邮件的ID,发信人,收信人,标题,发送日期,及信件内容等,其逻辑结构设计如表3-5所示。
表3-5tb_mail表
字段名
字段描述
字段类型
是否主键
允许为空
Id
用户编号
integer
是
否
sender
发信人
varchar
否
否
receiver
收信人
varchar
否
否
Title
标题
varchar
否
否
sendTime
发送日期
varchar
否
否
message
内容
varchar
否
否
4系统开发工具及JDK搭建简介
前面已经简单介绍了开发本程序所用到的软件及系统,下面主要介绍开发工具和语言。
4.1Eclipse3.6介绍
Eclipse是一个开放源代码的基于Java的可扩展开发平台。
就其本身而言,它只是一个框架和一组服务,用于通过插件和组件来构建
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 参考 邮箱 系统 设计 实现