admin管理员组

文章数量:1529446

设计目的

以前互联网和智能手机不发达的年代,传递个消息可能还要登个什么雅虎,163邮箱去给亲朋好友发个消息传递个文件啥的,还得期望别人上线才能查看到,而现在微信,QQ啥的都支持各种格式的文件传输,随便发个消息那边就能看到,可以说是非常方便了。而邮件系统我看了一下,全网都没多少人愿意去做了,原因是什么?太老旧了!功能太少太落后了!
那么在这个QQ,微信等社交通讯软件横行的时代,为什么我会想到去设计一个二十年前人们常用的邮件系统呢?答案就是安全性!前段时间的学习通盗号事件大家应该都有所耳闻吧。我们的个人信息,包括平常的聊天内容和文件啥的,都是被腾讯的后台数据管理员看的一清二楚的,举个很不恰当的例子,前段时间高考的时候,不就是有一兄弟偷拍了高考原题发QQ群里,没一会就被网警严查了么。不过话又说回来了,现在这个信息时代又有什么隐私可言呢?
激励我去设计这样一个系统的原因主要是因为大学班上有一位同学因为在QQ上点不明链接导致QQ号被盗。导致我们班上其他同学和他的聊天记录,还有他掌管的学校里,班级里的一些私密文件,全部都遭到了泄露。而且说到文件,相信各位都有过QQ下载的文件已过期或者已损坏无法查看而这个文件又是我们迫切所需的这种体验,那可真是欲哭无泪。
基于这样的一个背景,我打算设计一个数据库由自己管理的通讯方式。因为本人能力有限,再加上种种原因,我目前无法设计出一个社交软件,所以我只能暂时设计一个邮件系统,能满足班级里同学的正常聊天和一些机密文件的传输,也当作我的毕业设计了。在具有正常邮件系统所必备的一系列功能的同时,我在后端的代码中还留有一些拓展模块的雏形,以备日后有需求时再进行开发,这部分我会在“未来展望”部分详细叙述。

涉及技术

开发环境: IntelliJ IDEA
数据库:Mysql
核心项目:Tomcat,Maven
后端主要框架:Springboot
前端引擎框架:thymeleaf
系统架构:MVC框架,C/S架构
文本编辑器:Markdown
创新功能算法:RSA加密算法

功能分析

该系统具备以下所述的一系列功能:
注册功能:游客通过输入符合格式的账号,密码以及手机号可以进行注册。
登录功能:已注册的用户可以在登录界面正确输入注册时的账号,密码以及系统随机生成的验证码来进行登录,信息输入错误的用户将无法登录。
找回密码功能:忘记密码的用户可以通过正确输入注册时填写的手机号来进行验证从而重置密码。
修改密码功能:用户成功登录以后,可以修改自己的登陆密码,前提是必须正确输入旧密码,下次登录时需用新密码进行登录。
修改头像功能:用户成功登录以后,可以修改自己的头像,通过选取一张自己设备中的本地图片。该功能的设计目的主要是用来满足用户的个性化需求,方便用户之间区分彼此。
写邮件功能:用户成功登录以后,可以给自己选定的收件人发送邮件,邮件的形式可以选定为纯文本,单附件以及文本附件混合,邮件中的附件来源于自己设备中的本地文件。
发件箱功能:当成功发送邮件后,用户可以在发件箱中查看自己已发送的邮件并查看发送对象是否已读。
邮件撤回功能:用户可以在发件箱中撤回已经发送的邮件。
草稿箱:用户未完成的邮件可以存放在草稿箱中,用户可以在草稿箱中查看并继续编辑当时未完成的邮件。
收件箱功能:当有用户给自己发送邮件时,自己可以在收件箱中查看相应的邮件,如果邮件中有附件,自己作为收件方同样可以进行下载附件操作。
搜索邮件功能:用户可以通过搜索邮件中的关键字来搜索自己收到的或者发出过的邮件。
时间功能:无论是发出的邮件,未发出的邮件还是已接收的邮件,系统中均可以查出该邮件对应的时间。
安全性功能:用户所发送出的邮件和用户的用户名,密码这些私密信息会被系统自动进行加密,即使终端数据库被入侵,用户的隐私也能得到良好的保障。
以上功能包括了一个成型的邮件系统应具有的所有功能及考虑到安全性而设计的附加功能,从用户角度来分析,该系统的功能基本上能满足用户提出的主要需求。


本文标签: 邮件系统源码论文SpringBootJava