【基于JAVA的电子邮件系统设计与实现7900字(论文)】_第1页
【基于JAVA的电子邮件系统设计与实现7900字(论文)】_第2页
【基于JAVA的电子邮件系统设计与实现7900字(论文)】_第3页
【基于JAVA的电子邮件系统设计与实现7900字(论文)】_第4页
【基于JAVA的电子邮件系统设计与实现7900字(论文)】_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

基于java的邮件系统的设计与实现PAGE44基于JAVA的电子邮件系统设计与实现摘要现行的各大邮件系统除了最基本的接发邮件之外,其它功能也愈加复杂且不为人们所喜。鉴于此,开发一个集收、发、管理三位一体的功能相对简易实用的电子邮件系统可以大大方便人们的使用。此次电子邮件系统基于Eclipse应用开发平台和MySQL数据库,采用Java技术中的SSM(Spring-SpringMVC-MyBatis)框架开发出来的,是一款融合了电子邮件的发送、派遣以及管理等功能的电子邮件系统。关键词:电子邮件系统,MySQL,Java,SSM目录1引言 11.1课题背景 11.2电子邮件系统应用现状 12可行性分析 12.1技术可行性分析 12.2经济可行性分析 13需求分析 23.1用户需求分析 23.2数据库需求分析 34概要设计 34.1逻辑结构设计 34.2系统功能模块划分 34.2.1邮件管理模块功能设计 44.2.2系统管理模块功能设计 54.3数据库设计 65系统测试 85.1功能测试 85.1.1测试环境 85.1.2登陆测试 85.1.3收发邮件测试 95.1.4用户管理功能测试 125.2测试结论 146总结与体会 14参考文献 15PAGEPAGEPAGE39PAGEI1引言1.1课题背景时过境迁,当今社会的快速发展,使得人们摆脱了原来的旧的传统的通讯模式,接受并且使用新的通讯方式。在这种背景下发展起来的电子邮件的通讯模式也逐渐被大部分人熟知、接受。邮件兴起的主要原因在于其操作简单,传输迅速,无视时空,可以适用于各种办公场景。而且其对于操作对象也没有太高的硬性要求,上至老人、下至儿童都可以应用。况且在当今提倡绿色环保的主题下,采用电子邮件这种通讯方式来传递信息,不仅无纸化还具有效率和安全性。1.2电子邮件系统应用现状在当今商业模式下,现行的各大邮件系统如:QQ邮箱、网易邮箱以及新浪邮箱等,除了最基本的接发邮件功能以外,在商业模式下,所被挟持增加的功能也越来越五花八门,脱离了原本的需求,不为人们所喜。所以对于用户而言,一款使用便捷,传输快捷且没有其他各种复杂功能的电子邮件系统是特别需要的。因此希望通过本次设计能够完成一个满足用户需求且操作简单,功能完备的电子邮件系统。2可行性分析2.1技术可行性分析本系统使用Eclipse开发软件,采用Java技术中的SSM框架,运用MySQL数据库开发而成[1]。本系统是一个JavaWeb项目,采用前端和后端两大模块来进行编写。前端主要是对网页的编写,保证其页面的完整性以及可操作性。后端则是采用SSM框架进行编写,SSM框架的存在极大的减小了代码的编写量,也使我们的开发更加的便捷。采用的MySQL数据库,它能通过表之间的关系连接起来,从而大大方便了我们的数据管理。经过对各个技术方面的分析,我们发现本套系统的技术实现可以实施。2.2经济可行性分析本系统的开发并没有额外的经济消耗。服务器使用的是能够部署在Eclipse上的Tomcat服务器,它是一款性能稳定且免费的Web应用服务器,因此在服务器这方面不需要经济的开销。而MySQL的数据管理也可以在Navicat上进行部署,Navicat不仅使用起来快速可靠,最重要的是其价格也是相当的便宜,并不会带来一些经济的负担,使开发这可以安全简单的对信息进行组织和访问。综上所述,在经济方面,此项目是可行的。3需求分析电子邮件系统主要是让用户用来收发邮件的。在此目的下,对项目进行必要的功能分析,最终发现本系统实现的功能需求如下:(1)联系人的需求:在用户登录系统之后,他能够查看他的所有联系人,并且能够对联系人进行快速搜索和对其信息的必要管理。(2)自身账户管理的需求:在用户登录系统后,他可以用自身账户的信息进行管理,如:对昵称和密码的更改。(3)收发邮件的需求:本系统要能够实现电子邮件发送和接收。在发送邮件方面,要能实现电子邮件的附件发送。而在接收邮件方面,系统能够给予提示并且能够在第一时间查看到对方所发电子邮件的内容,对电子邮件的附件能够进行下载保存[2]。3.1用户需求分析通过以上需求的分析得出用户需要实现的功能,如图3-1所示。图3-1用户功能分析图(1)注册新用户:登录此系统后,用户可以通过填写昵称、密码等创建一个新的账户。(2)管理个人信息:个人信息的管理可以分为两部分:一是查找个人信息,二是修改个人信息。用户可以根据自己的昵称查询自己的信息,也可以使用修改功能修改自己的个人信息。(3)管理邮件信息:邮件的信息管理可以分为三部分:删除电子邮件、发送新邮件以及查看电子邮件。用户可以删除收件箱中已经看过或者不必要的电子邮件,同时用户也可以发送新的电子邮件给其他用户。当收到邮件时可以查看邮件中的信息。(4)管理联系人信息:联系人的信息管理只需要实现基本的增删改查(CRUD)功能即可。用户可以根据自身的需求去增加或者删除自己的联系人,也可以通过搜索栏快速查询到想找的联系人。亦可以根据需要对联系人的一些信息进行更改。3.2数据库需求分析根据以上的功能分析,可以得出数据库的需求分析,分为以下几点:(1)邮件的数据库需求:首先每份邮件都应该在数据库里有属于自己的编号,以方便后期对邮件的查找。然后便是要有邮件的题目、内容、日期以及发送邮件的发件人和收到邮件的收件人。最后便是要有发件人所发的邮件的附件的信息数据。(2)用户的数据库需求:用户在数据库里也应该有属于自己的用户id,以及用户的个人信息,如:昵称、姓名、性别、住址、登录密码等,当然这些信息用户可以根据自身需要进行填写。最后便是用户的登录信息也需要存入库中。(3)登录信息的数据库需求:数据库中需要存入每个用户的登录信息,如:登录日期、用户id、昵称、姓名、端口号等。4概要设计4.1逻辑结构设计逻辑结构设计最终目标是为数据库的实现作准备。本系统采用的是MySQL数据库,所用管理数据库的软件工具是Navicat,新建数据库名称为youjian。用户基本信息关系模式(主键用下划线标出):Power_user(id,login_name,user_name,password,sex,department,login_time,update_time)邮件信息关系模式(主键用下划线标出):Email(id,a1,a2,a3,a4,a5,a6,a7,a8)4.2系统功能模块划分在对本项目进行过基本的需求分析和完善后,我们可以对本系统的功能进行模块划分在前端页面显示出来,模块划分如图4-1所示图4-1系统功能模块划分图4.2.1邮件管理模块功能设计(1)发件箱的模块功能设计用户登录系统后进入系统页面,点开邮件管理下的发件箱模块,进入发件箱的前端页面,用户可以在这个页面查看自己原来所发送过的所有邮件,可以分页查询在页面的上半部分输入邮件名来进行快速查询,点击每个邮件后方的查看按钮可以查看邮件的所有内容,如:邮件标题,发送的具体时间和日期,发件人,附件等。而点击每个邮件在附件的下载按钮可以进行附件下载的操作。按下这个页面上方的添加按钮,用户可以进行对要发送的邮件进行编写的页面,在此页面中用户可以书写邮件的题目以及内容,上传自己所需要的附件并可以选择自己要发送的联系人,点击下方的保存按钮即可进行发送和报送。而选中自己想要舍弃的不必要邮件,可以点击上方的删除按钮进行删除操作,当然亦可以进行全选删除操作。在发件箱这个页面每页可以显示15条邮件信息,并可以进行‘首页’、‘上一页’、‘下一页’、‘末页’以及跳转到固定页面的操作。此上便是对发件箱的功能设计。操作简洁且易懂。(2)收件箱的模块功能设计收件箱的功能和发件箱的功能大体上类似,显示用户所收到的所有邮件并可以对收到的邮件进行查看,搜索等操作。此功能页面也具有分页功能,可以进行‘首页’、‘上一页’、‘下一页’、‘末页’以及跳转到固定页面的操作。而此页面与收件箱功能页面所不同的是此页面并没有设计添加这一功能按钮,仅仅只有删除这一功能按钮,可以进行对所受到的垃圾邮件的删除操作,也可以进行此页面的全部删除操作。和收件箱页面相同,每页只存储15条邮件信息,多出的便自动存储到下一页。4.2.2系统管理模块功能设计在本次设计中,系统管理模块分为三个小模块,分别为:用户管理、菜单管理以及角色管理。在这三个小模块中,用户管理设计当中的重中之重,其次才是角色管理,最后是菜单管理。可以说角色管理是三个当中最不重要的。所以在之后的介绍中会采用大篇幅的去介绍对用户管理的功能设计,而对角色管理只会提上寥寥几句。(1)用户管理的模块功能设计在本系统的设计中,用户是其中最重要的一环,甚至于可以说用户是此邮件系统的基石。首先,用户将进入该系统的登录页面。在对用户登录时页面进行编写时,我们就是这样设计:它拥有一个独具特色的背景图,页面上方分别显示了项目名称《电子邮件管理系统》,页面的正中央设置了一个用户可以在该系统中进行登录信息输入框来直接进行用户对于账户和密码等信息的填写,并且它们也具有了验证码功能。在每个用户正确地填写完自己的注册账户和密码以及正确的验证码后,点击用户登录的按钮,页面将会对用户登录验证码的真实性进行检查审核,若是审核成功,系统便会将每个用户所提交的注册账户和密码发送到后端

DAO层中对其进行检验,检验正确,用户将顺利地登录至系统中,如果检验不正确,系统会在登录页面进行提示:“用户/密码输入错误!”;但若验证码审核错误,会弹窗提示你:“验证码错误”,这时系统会刷新验证码图片让你再次输入进行登录。在用户顺利登录后,会来到我们的系统页面。在最上方,有着“欢迎您+用户自身的姓名”的标语,还有着退出系统以及修改密码的功能按键。按下退出系统的功能按钮,页面回头弹窗提示你是否确认要退出系统,点击确定即退出系统,跳回到登录页面,点击取消则弹窗消失,返回至原页面。而按下修改密码的功能按钮,则会从当前页面跳至到专门修改密码的页面,在此页面中,系统会让你输入原密码、新密码以及确认密码,填写完毕后点击保存按钮则系统会弹窗提示你:“修改密码成功,跳至登录页面重新登录。”,此时点击确定按钮即可。但若你没有按要求完整填写便点击保存按钮则会提示你:“密码不能为空。”若是不想修改密码,关闭此页面即可。在点击用户管理后,页面会自动跳至用户管理页面。在此页面中,最上方有着添加和删除两个功能按钮。若想要添加用户,点击添加按钮,系统会让你对新添加用户进行基本的信息填写,如:登陆名、姓名以及角色。角色可以分为超级管理员和普通用户,超级管理员较普通用户的权限更大。在填写完成点击保存按钮后,其提交的信息会自动封装成一个对象,传输给DAO层,检测其有效性后再传递给数据访问层,将其信息保存到数据库当中。此时页面便会自动更新并显示出新用户的信息。而删除按钮则很简单,勾选出自己想要删除的用户信息,按下删除按钮便可对其进行删除,页面自动刷新并不再显示删除用户的信息。在添加和删除按钮的下方,便是系统所有的用户的信息,也是用户的联系人信息,即只要注册进入本系统的人员,用户都可以对其进行收发邮件的功能操作。此页面中显示的用户信息有:用户名、密码(经过加密算法加密后的密码,并不是原密码)、用户姓名、管理级别以及操作。操作这一栏下有每个用户的修改按钮,用户可以点击来完成对自己信息的修改。和收件箱,发件箱一样,每个页面可以存储15条用户信息并且有着分页操作。(2)角色管理的模块功能设计点击角色管理按钮后,进入角色管理页面。本系统有默认目前有两种角色,即是:普通用户和超级管理员。超级管理员拥有者较大的权限,本系统的两大模块其都可以进行查看,而普通用户只是拥有着查看邮件管理这个模块的权限。当然,在此页面中,也拥有着添加和删除按钮。按下添加按钮,可以添加新的角色,给他分配新的权限。而按下删除按钮则可对已有的角色进行删除操作。此页面也具有分页操作。4.3数据库设计根据前面对数据库需求的分析,可以知道本次系统设计有两大数据源表即主表,分别是邮件表和用户表。而为了系统的完整系以及保证数据的简洁性,本人在对数据库表进行设计时亦增添了几个辅助性的数据库表。在下面的设计介绍中,只挑部分的重要的数据库表进行设计介绍。(1)邮件表(email)该表主要用来存储邮件的基本信息,表结构如表4.1所示。表4.1邮件表名称数据类型允许空值是否主键说明idint(32)NOPK邮件主键a1varchar(250)邮件题目a2varchar(6500)邮件内容a3varchar(32)日期时间a4varchar(250)收件人a5varchar(250)备注a6varchar(250)发件人a7varchar(250)姓名(2)用户表(power_user)该表主要用来存储用户的基本信息,表结构如表4.2所示。表4.2用户表名称数据类型允许空值是否主键说明idvarchar(32)NOPK用户主键login_namevarchar(20)昵称user_namevarchar(20)姓名passwordvarchar(32)登录密码sexint(4)性别departmentvarchar(20)住址login_timevarchar(20)登录时间update_user_idvarchar(32)更新的用户idupdate_timevarchar(20)更新时间(3)登录信息表(log_login)该表主要用来存储用户的登录信息,表结构如表4.3所示。表4.3登录信息表名称数据类型允许空值是否主键说明idvarchar(32)NOPK主键typeint(4)类型login_namevarchar(20)昵称user_namevarchar(20)姓名user_idvarchar(32)用户idlogin_timervarchar(20)登录时间(4)用户角色表(power_role)该表主要用来存储用户的角色信息,表结构如表4.4所示。表4.4用户角色表名称数据类型允许空值是否主键说明idvarchar(60)NOPK主键role_namevarchar(20)角色名称remarkvarchar(100)标记update_timevarchar(20)更新时间update_user_idvarchar(32)更新的用户idupdate_user_namevarchar(20)更新的用户姓名5系统测试5.1功能测试在完成本项目的编写后,在Eclipse中运行,对本项目的一些重要功能进行功能测试。即对邮件管理功能和用户管理功能进行测试。5.1.1测试环境操作系统:Window10;数据库:MySQL;应用软件:Eclipse;浏览器:谷歌浏览器。5.1.2登陆测试测试数据信息为:用户名:admin,密码:admin。首先使用正确的用户名、密码以及验证码来进行登录测试。可以实现用户的登录并进入电子邮件管理系统。测试结果如图5-1所示。图5-1测试结果图紧接着使用正确的用户名和密码以及错误的验证码来进行登录测试,页面出现提示:验证码错误。测试结果如图5-2所示。图5-2测试结果图最后使用错误的用户名或者密码,以及正确的验证码来进行登录测试。页面出现提示:用户名/密码输入错误!测试结果如图5-3所示。图5-3测试结果图5.1.3收发邮件测试(1)发件箱功能测试测试数据信息为:发件人昵称:admin,发件人姓名:管理员,收件人:hao,邮件题目:Hello邮件内容:好久不见,甚是想念。用户在顺利登录系统后,使用发邮件功能。先点击发件箱按钮,进入发件箱操作页面,点击添加按钮,即跳转到编写发送邮件内容的页面,在此页面中,可以填写邮件题目,内容,选择联系人以及添加附件。编写接受,点击页面下方的保存按钮,即可以对邮件进行发送和保存操作,页面也会弹窗提示:添加成功。测试结果如图5-4所示。图5-4测试结果图在发件人实现发送邮件成功的操作后,我们用收件人的账户和密码来登录邮件系统来进行验证,看系统是否完整地完成了发邮件功能操作。收件人账户:hao,密码:111111验证结果如图5-5所示。图5-5验证结果图在完成发送邮件功能测试后,对发件箱页面的删除功能进行操作,勾选每条邮件信息最前方地小方块,之后点击删除按钮即可进行删除操作。测试结果如图5-6所示。图5-6测试结果图之后,我们对页面最上方地快速搜索功能操作来进行测试。用户在邮件名的输入框输入想要搜索的邮件名,点击搜索按钮,即可快速查到其邮件并对其内容进行查看。测试数据信息为:邮件名:123。测试结果如图5-7所示。图5-7测试结果图(2)收件箱功能测试收件箱的功能大多数与发件箱类似。所以在此页面测试中,我们只对删除操作以及分页操作进行测试。选中想要删除的邮件点击删除按钮,测试结果如图5-8所示。图5-8测试结果图点击页面下方的上一页或者下一页可以进行跳页操作,测试结果如图5-9所示。图5-9测试结果图5.1.4用户管理功能测试角色为超级管理员的用户,在顺利登录邮件系统后点击用户管理按钮,进入用户管理页面。此页面显示系统中所有注册过的用户的信息(注:显示用户的登录密码是经过加密后形成的字符串,并不是用户本身的登录密码。),以及要实现的各种功能操作按钮。下面便是对用户管理中的各个功能进行测试。(1)添加用户功能测试点击用户管理页面上方的添加按钮,便能够对新用户进行添加注册。在点击添加按钮后,页面便会让用户对新注册的用户进行基本的信息填写,如:昵称、姓名以及角色。(注:为了方便用户操作,系统默认新注册用户的登录密码为:111111)在用户完整填写基本信息后,点击保存按钮则可以成功添加用户,点击取消按钮则视为放弃此次注册新用户操作。但不论用户是点击哪个按钮,点击后系统会自动跳至用户管理页面并自动刷新数据。测试结果如图5-10所示。图5-10测试结果图(2)删除用户功能测试此功能的实现操纵和上面收发邮件箱的删除操作相同。这里便不在赘述。(3)修改用户功能测试在每条用户信息的后方,有着修改功能按钮。点击,即可进行用户的修改功能操作,在页面中对弹出的用户信息如:昵称、姓名和角色进行更改。(4)修改密码功能测试在页面的最上方有修改密码的功能按钮,点击修改密码,系统会自动跳至修改密码页面,让用户进行原密码、新密码以及确认密码的填写,完整填写完毕后,点击页面下方的保存按钮,页面弹窗提示:修改成功!跳至登录页重新登录。点击确定按钮后,完成操作。测试结果如图5-11所示。图5-11测试结果图(5)退出系统功能测试用户使用完系统后,点击系统页面上方的退出系统按钮,弹窗提示:您确认要退出系统吗?点击确定按钮即退出系统,返回至登录页面。测试结果如图5-12所示。图5-12测试结果图5.2测试结论经过多次测试结果可知,电子邮件系统基本能够实现预期功能,且在运行过程中并没有出现卡顿等问题,无太大毛病,部分核心功能较为完善,能够满足用户的基本需求,使其流畅地进行操作。6总结与体会在进行本科生最后阶段的毕业设计的过程中,自己的各方面能力都有着很大的提升。这次的毕业设计,自己合理地运用了自己在本科阶段所汲取到地知识来完成。首先,在进行毕业设计定题目时,感谢李国厚老师对我自身项目想法地支持。在敲定完自己的项目后,自己便开始动手查找相似的项目以及对自己的项目进行规划设计。这样一方面使系统的设计逐步完善,另一方面可以不断积累自己在软件设计方面的技巧。其中有一些比较深刻的体会,首先是在对项目设计时一定要做好整体分析,要对自己设计邮件系统要实现的功能、用户的需求以及所需要的技术进行整体分析与总结。在这个时期自身可以根据项目需要做好各个功能模块的流程图,并总结成文档记录下来。毕竟只有在做好需求分析的前提下才能顺利的完成整个系统的开发,否则可能会在开发的工程中出现不断有问题不断有Bug的情况,甚至会出现在开发一段时间后发现之前所做的设计与要求相差很大而重做的情况。这将给整体的开发进程以及系统的完成度带来很大的麻烦。所以我们要在这个阶段重点去下功夫。其次,要明白在开发数据库应用系统一定要做好数据库的分析和设计,完成整理好系统中的数据流图。自身因为在最开始时设计数据库中的邮件存储不合理,导致程序做出来后无法完成发送及接受邮件的功能,所以这也让我意识到了数据库设计的重要性。自己这次开发的电子邮件系统在自己预期规划的基本功能已经完成。设计要实现的邮件系统功能块也得到了较为满意的实现效果。在这次项目中,系统的关键部分主要集中在用户管理和邮件管理两个部分上。另外该系统可以作为其他系统的一部分,添加到其他系统中去。但就目前设计的邮件系统而言,项目仍存在一些不足之处,为了方便系统自动生成密码,只能在系统用户内进行邮件的传输,这是一个闭环。所以下一步,要进行更深层次的学习来尽量完善系统中的不足之处。参考文献[

温馨提示

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

评论

0/150

提交评论