基于SSM的云笔记的设计与开发_第1页
基于SSM的云笔记的设计与开发_第2页
基于SSM的云笔记的设计与开发_第3页
基于SSM的云笔记的设计与开发_第4页
基于SSM的云笔记的设计与开发_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

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

文档简介

1、 基于SSM的云笔记的设计与开发 Design and development of cloud note based on SSM 内容摘要在传统的教育中,一般都是使用纸张进行笔记记录;教育信息化成为互联网时代发展应用于教育的一个趋势,网络上出现了很多在线学习的平台,学生在进行网络学习时需要记录笔记。一个良好的云笔记网站,能够使得学生笔记撰写和管理更加方便。为此,以云笔记网站的设计与开发为题展开了论文的撰写工作。系统采用B/S模式结构,主要使用Java语言,基于Java的SSM框架进行开发实现。主要功能实现是以笔记功能为主,支持笔记的分享,收藏,移动,以及笔记回收站功能;本系统还有天气,收藏

2、检索,聊天和备忘录等附加功能。笔记功能基本满足学生学习使用的要求,附加的便捷功能将为学生提供更丰富的使用需求。本课题实现的云笔记和互联网技术的结合,能有效提高用户的学习效率和方便用户对笔记管理。关键词:云笔记 系统 SSMAbstractIn traditional education, paper is generally used for taking notes; Education informatization has become a trend applied to education in the Internet age. Many online learning platf

3、orms have appeared on the Internet. Students need to take notes when doing online learning. A good cloud note website can make student note writing and management more convenient. To this end, the design of the cloud note website and the development of the paper began the work of writing papers. The

4、 system adopts B / S mode structure, mainly uses Java language, and is developed based on Java SSM framework. The main function implementation is based on the note function, which supports note sharing, collection, movement, and note recycle bin functions; the system also has additional functions su

5、ch as weather, collection retrieval, chat, and memo. The note function basically meets the requirements of students learning and use, and the additional convenient functions will provide students with more abundant use requirements. The combination of cloud notes and Internet technology implemented

6、in this project can effectively improve the users learning efficiency and facilitate the users management of notes.Key words: cloud note system SSM 目 录第一章 绪论11.1课题背景11.2课题现状11.3研究内容2第二章 需求分析32.1 功能性需求分析32.2 非功能性需求分析6第三章 系统设计83.1系统总体设计83.1.1系统架构设计83.1.2功能结构设计83.2系统功能模块设计93.2.1网址收藏检索模块设计93.2.2备忘录模块设计1

7、03.2.3笔记模块设计113.2.4评论反馈模块设计123.3数据库设计133.3.1数据库概念设计133.3.2数据库表设计14第四章 系统实现174.1开发平台与相关技术174.1.1开发环境与工具174.1.2开发技术174.2系统功能模块实现184.2.1注册登录184.2.2天气224.2.3聊天交流244.2.4网址收藏检索264.2.5备忘录294.2.6笔记334.2.7个人中心374.2.8关于网站39第五章 系统测试415.1测试环境415.2功能测试415.3非功能测试43第六章 总结与展望466.1总结466.2展望46参 考 文 献47致 谢48广东东软学院本科生毕

8、业设计(论文)第一章 绪论本章首先介绍了笔记平台的背景和发展现状,对笔记平台的发展和前景进行了深入分析与总结,提出了对于本课题的研究内容,并对其进行详细阐述。1.1课题背景互联网的发展和普及,学生学习方式也越来越多样化。促使着社会走上飞速发展的道路。在我国,互联网已经在社会上占领着非常重要的地位,由于互联网的实时性和高效性,人们能从网络上快速获取各方面的信息。在互联网+的时代,教育和互联网技术融合起来,使网络上兴起许多K12的教育平台,由于这些教育平台结合了优质的教育资源,以及解决了传统教育方式的不足之处,使得学生能够高效地获取所需知识,非常受到学生们的欢迎;相信今后的教育学习与互联网的联系也

9、会越来越多。学生在使用互联网教育平台学习时,由于在学习的过程会有一些重要的知识点需要记录,传统的笔记记录非常不便,使用的时候查找起来也比较费时,也削弱了互联网学习的优势。基于此,本文将互联网技术与笔记结合起来,设计实现了云笔记网站。云笔记网站主要为在互联网学习的用户提供笔记记录,学生在学习过程可以使用互联网随时随地的记录笔记,在平时中利用空闲的时间学习笔记知识重点,并可在平台上分享自己对于笔记的所思所想,学生们通过笔记分享互相参考,互相学习,提高学习的效率和个人知识水平。1.2课题现状目前从网络上看,网络教育平台兴起不久,笔记平台的使用者也比较少,一般以学生用户居多,还有少部分工作者使用;网络

10、上的笔记平台不多,其功能针对性较强,也比较单一。市面上用户使用的比较多的是印象笔记和有道云笔记,也是比较得到用户青睐的笔记平台。这些笔记平台主要侧重于事件记录,没有其它吸引用户的扩展功能,成为了制约笔记平台发展的高度。随着网络教育的模式迅速发展,以网络教学的优势必定使网络教育平台迈上一个新的高度,辅助教育的笔记平台也将迎来一个新的春天。通过上述对笔记平台的分析,分析出目前笔记平台的功能比较专注单一,缺少特色的功能,以及网络教育刚起步导致使用的用户较少。但随着网络技术的不断发展和越来越多人使用网络学习,笔记平台将跟着用户的使用需求变化,功能也将越来越完善,使用的用户也将日益增多,必将受到学生们的

11、追捧。1.3 研究内容本文将对云笔记网站进行详细的分析,从用户的需求和产品开发的角度,设计并实现了一个在线笔记的平台网站,有效解决了学生们网络学习的笔记记录效率问题。本文的研究内容如下:(1)首先通过分析目前互联网上的笔记平台的优点,并结合对用户的功能需求调研,以及个人的一些创新点,确定出系统的需求。(2)根据上述对于云笔记网站的需求分析,对云笔记网站的功能进行详细设计,设计出云笔记网站的功能架构,并对各个功能模块和展开数据库中的每一个实体表进行详细设计。(3)对于上述的需求分析和系统详细设计,明确出系统开发的环境和工具,对云笔记网站的关键实现技术进行相应的介绍,分析使用的技术优点,更好地应用

12、技术是是实现系统功能和扩展功能。对云笔记网站的各个功能模块进行是实现。(4)对云笔记网站的核心功能模块进行相关的功能性和非功能性上的测试,并分析对比测试结果是否符合系统需求。(5)对于整个项目的开发和设计进行了总结和展望,明确本文的研究结果,提出项目存在的不足,并在后续的工作中对其进行不断优化。第二章 需求分析 需求分析是一个产品研发的前期阶段的重要工作内容1。整个需求分析需将用户的真正需求转为产品需求,以及结合系统后续扩展稳定性方面。最终,确立出系统的总体需求。本章将对云笔记网站的需求进行具体地分析。2.1 功能性需求分析在对系统功能性需求分析中,我们需要挖掘用户内心真切需求,通过对需求的分

13、析于提炼,形成产品的最终需求2。云笔记网站主要面向的是学生、老师和部分工作使用者,本文将探寻和分析这些用户的需求,并结合我自己对该系统一些功能上的想法扩展,最后分析和梳理出该系统功能需求。以下是通过用例图描述分析总结出来的结果:用户能够进行注册并登录云笔记网站,并能在该系统进行笔记基本操作,在笔记广场浏览用户分享笔记,我还增加了一些特色的功能,包括查看天气,聊天交流,网址检索和备忘录功能。其用例图如图2-1所示:图2-1 系统用例图云笔记网站主要为用户提供便捷功能,结合以上的用例图对于系统功能的分析,分析总结出系统需要提供注册登录、天气查看、聊天、网址收藏检索、备忘录、笔记、笔记分享、个人中心

14、、评论反馈等功能;下面将通过对笔记网站的功能进行分析,并能对其进行详细阐述。(1)注册、登录:使用云笔记网站的用户都需要进行身份验证,所以需要提供注册登录功能。注册需要使用个人邮箱作为用户账号,为了更好的给用户在账号忘记密码的情况提供验证,验证使用邮件发送修改密码链接,用户的账号将得到更好的安全保障。 (2)聊天:使用云笔记网站的用户,用户可以在线交流笔记撰写心得,以及笔记的重点,用户进入该模块与在线用户进行聊天交流,发送弹幕聊天信息,所有用户的聊天信息都会在界面弹幕滚动显示。其用例图如图2-2所示: 图2-2 聊天用例图(3)网址收藏检索:对于每个网络用户来说,总有几个经常访问的网站,还有用

15、户在进行笔记撰写时需要参考一些网络上的知识和资料,就需要把网址保存起来,但如果仅仅只是做一个收藏夹保存起来的话,用户需要访问的时候需要花费一定时长去收藏列表里寻找网址,所以网址需要有一个命名,系统提供一个网址检索功能,用户在保存网址的时候对其命一个简单有含义的名称,在需要访问某个网址的时候,只需用户输入命名检索即可访问,并提供网址管理功能方便用户删除不再需要的网址。其用例图如图2-3所示:图2-3 网址检索用例图(4)备忘录:在该模块中,用户使用备忘录需要有基本的备忘录填写内容,设定备忘录提醒的时间,在备忘录到设定提醒时间时,需要有一个提醒用户的途径,所以本系统采用邮件通知的方式发送邮件告知用

16、户备忘录的详细内容,邮件地址使用是用户注册的邮箱地址;用户在备忘录没发送时,系统可提供备忘录信息修改的功能;当一些备忘录信息用户已经不再需要时,可删除不必要的备忘录信息。其用例图如图2-4所示:图2-4 备忘录用例图(5)笔记:笔记功能模块是云笔记网站中主打的功能,需要提供最方便快捷的笔记记录操作,对于用户来说,往往记录的不止一种类型的笔记,因此,云笔记系统需提供笔记本功能,提供用户来分类不同类型的笔记,使用户在复习笔记时通过标记类型的笔记本列表更加方便快捷的查找并查看笔记,同时系统也提供删除笔记本的操作;有了笔记本,用户可以根据自己划分的类型使用任意一个已经创建完成的笔记本,在该笔记本下创建

17、笔记;为了使用用户编辑笔记更加灵活方便,笔记编辑提供富文本编辑器,可根据自己喜好设置文字样式,字体大小,以及段落格式;笔记创建完成后,用户可对其修改、移动、删除、收藏和分享;笔记的移动可以将目标笔记移动到任意一个已经创建的笔记本,笔记的删除则会提供二次删除,防止用户的误删除,首次对笔记进行删除操作,笔记不会完全消失,笔记将会放到笔记回收站中,在回收站中对笔记进行第二次删除才会将笔记彻底清除,进入到回收站的笔记,用户还可对其进行恢复。笔记的收藏在对某一个笔记点击收藏时,笔记将会加入到收藏夹,在收藏夹中,用户可以进行查看收藏的笔记,或对笔记进行取消收藏。笔记分享功能提供用户在本网站对笔记信息共享,

18、被分享的笔记将会进入到笔记分享广场,供其它用户浏览和参考。其用例图如图2-5所示:图2-5 笔记用例图(6)个人中心:用户可进入个人中心查看网址收藏数量,备忘录数量和笔记数量的统计,还可以查看用户使用云笔记网站的动态。此外,个人中心提供用户注销登录。其用例图如图2-6所示:图2-6 个人中心用例图(7)评论反馈:评论反馈模块主要提供用户对于网站的建议,在网站进行评论反馈。2.2 非功能性需求分析非功能性需求为了系统操作层面上的需求,是需要分析的重要组成部分,非功能性需求将对决定一个软件所能到达的高度,开发人员需重点关注的,否则将直接影响到整个系统的运行和使用。本文将从以下的几个方面进行详细的阐

19、述。(1)安全性:云笔记系统中的笔记、备忘录等信息属于用户隐私信息,用户需要通过账号、密码登录云笔记系统,成功完成登录认证才能使用网站的功能,忘记密码时需要使用发送邮件验证邮箱账号,用户密码采用加盐加密存储在数据库。(2)响应时间:用户点击系统上的某一个功能模块,系统一般响应时间不超过1.6s,并能准确地响应出操作结果。(3)兼容性:系统应能兼容市面上各大主流的浏览器,例如谷歌浏览器,火狐浏览器以及IE9.0版本以上的浏览器。(4)可靠性:系统应该对一些输入提供验证提示,对输入数据进行检验,防止提交数据造成系统异常,系统中的笔记等功能操作应提供弹窗提示操作结果,给予用户反馈以便用户进行后续的系

20、统操作。(5)易用性:系统中的操作大多都使用简约风格的按钮,每个操作完成后,系统会提示用户的操作结果,各功能模块清晰明了,便于用户操作使用;界面的颜色,布局都是市面上主流的设计,整个系统页面风格基本一致,不会有太大的跳跃。(6)健壮性:系统对全部输入的数据提供校验,并对用户进行提示操作结果,防止异常的数据进入后端,从而使系统出现瘫痪无法处理任何请求。对于系统并发优化设计,多个用户对系统进行连续操作,不会对系统正确的响应造成影响。第三章 系统设计本章首先从总体上对云笔记网站的系统架构、功能结构进行了概要设计,其次使用统一建模语言,结合需求分析对云笔记系统中的各功能模块进行详细的分析和设计。此外,

21、还对本系统的数据库结构设计进行了详细描述。3.1 系统总体设计3.1.1系统架构设计 云笔记网站使用的是B/S架构为基础,前端采用Bootstrap框架为主,还有部分开源的CSS样式,实现美观的界面布局,后端使用Java的SSM框架进行开发,系统的登录认证采用Shiro框架,备忘录的邮件定时发送使用Quartz任务调度框架实现,网址收藏检索使用Elasticsearch存储网址索引,实现网址的快速检索3-6。3.1.2功能结构设计根据系统的功能性分析,确定出了云笔记网站的基本的功能模块,云笔记网站的功能模块包括注册登录模块、天气模块,在线交流模块,网址检索模块,备忘录模块,笔记模块,笔记分享模

22、块,个人中心模块,评论反馈模块等模块。云笔记主要功能模块图如图3-1所示。图3-1 功能架构图3.2系统功能模块设计由云笔记网站的功能结构设计可以看出本网站的主要功能,本章由此展开,对云笔记网站的部分功能设计进行具体描述。3.2.1网址收藏检索模块设计网址收藏检索功能是考虑到用户在记录笔记的时候,经常需要参考一些网络上你的文献资料,用户记录笔记有时因为时间原因,需要第二天才能继续编写笔记,如果重新查找参考资料的网页会非常麻烦。此时,网址收藏检索提供用户保存网址到收藏夹,对网址进行命名标记,使用命名对收藏夹进行快速检索,并跳转到网址页面。查看网站收藏检索流程如图3-2所示。图3-2 网站收藏检索

23、流程图3.2.2备忘录模块设计备忘录提供给用户记录重要事项,在用户设定备忘录具体时间,用户注册账号的邮箱会收到一封备忘录的提醒邮件。用户进入备忘录的功能页面,通过创建备忘录,就可在备忘录的主界面中看到新增的备忘录详情。在备忘录还没到提醒时间时,即未发送提醒邮件时,用户可以对备忘录的发送时间和内容进行修改,修改完成后,备忘录将按照新的信息执行提醒任务,如果用户不再需要某些备忘录,可对其进行删除。其备忘录管理流程图如图3-3所示。图3-3 备忘录管理流程示意图3.2.3笔记模块设计笔记功能模块包括笔记分享,笔记移动,笔记收藏,回收站。下面将对个功能进行详细描述。笔记功能结构图如图3-4所示:图3-

24、4 笔记功能结构图(1)笔记收藏:笔记模块有一个专门的笔记收藏列表,用户通过点击笔记收藏的操作,被执行的操作的笔记将会加入的收藏夹,用户也可对收藏夹中的收藏笔记进行取消收藏操作,该笔记将从收藏夹中移除。(2)笔记移动:用户可将某一笔记本中的笔记移动至其它笔记本中。用户通过点击笔记移动功能,选择需要移动至的目标笔记本,即可完成对笔记移动。(3)笔记分享:当笔记被用户执行分享操作时,被分享的笔记会在笔记分享广场列表中的显示,供其他用户借鉴和学习。用户点击页面中的笔记,可以查看笔记的详细信息。(4)笔记回收站:被用户对笔记执行删除操作后,笔记将会到达笔记回收站,当用户不小心对笔记进行误删除,可以对笔

25、记进行恢复,如果用户确定不再需要该笔记,可以对回收站的笔记进行彻底删除,该笔记信息将从系统彻底移除。(5)编辑笔记:用户选择一个笔记,对笔记的内容信息进行编辑后,并保存笔记,笔记的编写格式和内容就进行持久化操作。 3.2.4评论反馈模块设计评论反馈模块提供界面用户发表对网站的一些建议和评论。用户进行评论后,系统会先验证内容是否为空,以及是否符合系统限制要求,提交评论将会在评论列表显示。评论反馈的时序图如图3-5所示。图3-5 评论反馈的时序图3.3 数据库设计本节将通过需求抽象出数据库E-R图,并围绕数据库E-R图对系统涉及的每一个数据库表进行具体描述。3.3.1数据库概念设计数据库概念设计是

26、将用户描述的需求提炼并抽象成一个数据概念模型7-9。下文将对业务实现的功能进行分析得出设计数据库所需的实体,明确各实体之间的关系并绘制出数据库的E-R图。本系统中涉及的实体有用户,备忘录、笔记、笔记本、评论反馈。数据库E-R图如图3-6所示。图3-6 数据库E-R图3.3.2数据库表设计本节将对数据库E-R图中的各个实体设计出详细的表结构,并对设计的表进行详细描述。(1) 用户表用户表存放着网站用户的信息,如表3-1所示。表3-1 用户信息表表名user字段名数据类型约束描述user_idvarchar(50)主键, 非空用户IDnicknamevarchar(20)非空用户昵称passwor

27、dvarchar(32)非空用户密码emailvarchar(50)非空用户邮箱actite_stateint非空账号状态(0未激活,1激活)codevarchar(50)非空验证码saltvarchar(50)非空加密盐exptimedatetime非空过期时间register_timedatetime非空注册时间(2) 备忘录表备忘录存放着备忘录内容,备忘录发送时间,备忘录当前状态,最近编辑时间等信息,如表3-2所示:表3-2 备忘录信息表表名memo字段名数据类型约束描述memo_idvarchar(50)主键,非空备忘录IDuser_idvarchar(50)外键,非空用户IDsend

28、_timedatetime非空发送时间edit_timedatetime非空最近编辑时间stateint(2)非空备忘录当前状态(0未发送,1已发送)memo_contentvarchar(225)非空备忘录内容(3) 笔记本表笔记本存放着笔记本命名,笔记本创建时间等信息,如表3-3所示:表3-3 笔记本信息表表名book字段名数据类型约束描述book_idvarchar(50)主键,非空笔记本IDuser_idvarchar(50)外键,非空用户IDbook_namevarchar(50)非空笔记本名称book_create_timeBigint(20)非空笔记本创建时间(4) 笔记表笔记存

29、放着用户创建笔记的信息,如表3-4所示表3-4 笔记信息表表名note字段名数据类型约束描述note_idvarchar(50)主键,非空笔记IDuser_idvarchar(50)外键,非空用户IDbook_idvarchar(20)外键,非空笔记本IDstatus_idvarchar(32)非空笔记状态(1正常,2删除,3收藏,4分享)note_titlevarchar(50)非空笔记标题note_contenttext可为空笔记内容note_create_timebigint(50)可为空笔记创建时间note_modify_timebigint(50)可为空笔记最近修改时间(5) 用户评

30、论反馈表用户评论反馈存储用户评论的具体信息,如表3-5所示表3-5 用户评论反馈表表名commment字段名数据类型约束描述commment _idvarchar(50)主键,非空评论IDuser_idvarchar(50)外键,非空用户IDcontenttext非空评论内容create_timedatetime非空评论时间第四章 系统实现云笔记网站是基于用SSM(SpringMVC+Spring+Mybatis)框架实现,并使用Elasticsearch和Quartz技术实现具体业务功能,以及使用Shiro框架完成登录认证,前端则采用Bootstrap框架。本文将对系统的具体实现进行详细描述

31、,并展示云笔记网站中个功能模块的界面和功能实现的关键代码 。4.1 开发平台与相关技术4.1.1开发环境与工具本系统设计基于 B/S 架构,用户浏览器即可访问并登录云笔记网站,系统使用IDEA进行开发,系统运行前需安装Elasticsearch环境,Maven管理jar包10。开发环境和开发工具如表4-1所示。表4-1 系统开发环境与工具表项目系统环境开发工具IntelliJ IDEA 2018.3.5 ElasticsearchElasticsearch 2.3.3JDKjdk1.8.0_201Web服务器Tomcat 8.5数据库MySQL 5.7项目管理工具Maven 3.6.04.1.

32、2开发技术(1) Elasticsearch技术Elasticsearch是一个分布式,实时搜索和分析数据的引擎,通常用作搜索和数据分析11。Elasticsearch能对存储于的其中数据进行快速搜索,并对搜索结果进行分析,这就得益于一种称为倒排索引的存储结构。倒排索引也可称之为反向索引,是指将数据内容解析分解成对应的关键字,用关键字作为索引,数据内容作为索引值存储到Elasticsearch当中。所以,当用户在使用Elasticsearch进行全文检索时,分词器会对输入数据进行分词,利用分词检索数据,搜索出来的词条会按匹配度进行打分,最后按匹配分数排序显示给用户。(2) Quartz技术Qu

33、artz 是一个功能强大任务调度框架,用户可使用Quartz任务调度框架可以创建简单或复杂的计划,Quartz可用于定时作业调度和对调度作业管理,Quartz的CronTrigger可灵活设置任务调度时间,作业调度也灵活。Quartz调度程序还可对JTA 事务和群集的支持。(3)Shiro技术Shiro作为Java的安全框架,有着强大功能。Shiro的API使用非常简单,Shiro技术一般多应用于实现系统的身份认证和权限管理12。与其他的安全框架相比较,Shiro在简单性和灵活性有着较大优势。对于所有的安全判断动作以及资源,全部交给Shiro的安全管理器,用户只需专注于业务上的功能逻辑的实现。

34、4.2 系统功能模块实现4.2.1注册登录本系统的注册登录模块主要提供用户注册、用户登录以及忘记密码功能,使用网站的功能都需要进行登录认证才可访问。下面将分别介绍注册、登录和忘记密码的具体实现。登陆界面如图4-1所示图4-1登陆界面(1)注册用户进入云笔记网站的注册页面后,输入系统要求填写的信息,前端会对表单信息进行验证,用户点击提交,通过前端发送请求后端对用户信息进行处理,后端首先会验证用户所提交的邮箱查询数据库是否已经存在用户,根据查询的信息结果提示用户操作。当注册完成后页面将跳转至登录页面,用户的邮箱会收到由云笔记网站发出邮件,用户需要点击邮件中的链接对账号进行激活,才能使用该账号登录云

35、笔记网站。注册账号时插入到数据库中的用户信息会有一个账号状态的字段信息,记录用户是否已经对账号进行激活,0表示未激活,1表示已激活,在收到激活邮件的一天之内,用户进入链接激活账号,否则需要重新注册发送邮件激活账号13。邮件发送和账号激活关键代码分别如图4-2和4-3所示。图4-2邮件发送关键代码图4-3账号激活关键代码(2)登录用户进入云笔记网站的登录界面,输入网站要求的身份验证信息并提交到后端,后端的Shiro使用UserFormAuthenticationFilter类进行表单校验和验证,在提交给realm查询前,先判断用户输入的验证码是否正确,如果正确,程序将调用doGetAuthent

36、icationInfo()方法对用户身份数据进行验证,用户身份信息认证成功,用户即可访问系统。登录认证关键代码如图4-4和4-5所示。图4-4登录认证关键代码图4-5 登录认证关键代码(3)忘记密码用户进入网站中的忘记密码界面,输入用户邮箱账号,点击重置密码操作。注册账号的邮箱将收到加密链接,用户需要登录邮箱,查看邮件并通过邮件链接进入修改密码页面(邮件中的链接需要在24小时之内点击,超过时间链接将失效),用户输入新密码,并再次确认密码,点击提交。系统将用户密码进行更新操作,并返回成功信息给用户,用户将可以使用新的密码进行登录云笔记网站。4.2.2天气用户点击网址进入本系统,首页将显示所在地近

37、三天的天气预报。天气界面图如图4-6所示图 4-6 天气界面用户访问系统首页时,系统会请求高德地图的位置API,获得本机IP地址的所在城市,再根据查询得到的所在地去请求和天气的天气API获得天气情况,最后将得到JSON数据解析通过浏览器渲染出设定样式显示在首页。天气功能关键代码如图4-7所示图4-7天气功能关键代码4.2.3聊天交流用户登录云笔记网站后,点击导航栏中的聊天功能模块进入,聊天功能界面如图4-8所示。图4-8 聊天界面在聊天界面的下方弹幕输入框输入需要发送的信息,点击发送弹幕,系统界面就会出现弹幕信息,弹幕的信息是以用户昵称加上用户发送的信息拼接起来显示,所有在聊天界面的用户都可以

38、看到这条弹幕信息,信息是从右边滚动至左边,直到信息从界面消失,用户可以对其信息回应或者随意发表自己的心情。聊天使用的是goEasy插件,用户发送信息时,使用goEasy的appKey推送信息至goEasy插件,系统返回信息并将信息渲染至浏览器显示14。聊天功能关键代码如图4-9所示图4-9 聊天功能关键代码4.2.4网址收藏检索用户登录云笔记网站,点击导航栏中的个人收藏夹模块,进入到个人收藏夹模块,网址检索界面和网址管理界面分别如图4-10,4-11所示。图4-10网址检索界面图4-11 网址管理界面界面左边有增加网站和删除网站的两个功能按钮,中间是网站收藏检索框,用户点击增加网站按钮,弹出增

39、加网站的模态框,填写网址信息,并给网址命上简单便于记忆的名称,点击添加,信息到达后端,后端将验证该网站是否已经存储过,如果没有存储过,系统将信息索引存储于Elasticsearch中,添加成功便可在检索框中使用命名检索出收藏的网址,并迅速跳转到该网址,该检索是基于Elasticsearch的全文搜索,支持分词查询,搜索时系统将返回匹配分数最高的网址索引;点击删除网站,界面弹出模态框,系统将根据用户ID查询Elasticsearch中的所有索引,分页的显示在模态框中,点击模态框中的分页页码,可查看所有网站收藏信息,点击删除操作,系统根据网址索引ID查询Elasticsearch中的索引,将网址索

40、引信息移除,即可删除指定网站收藏信息。网址检索关键代码如图4-12所示。图4-12网址检索关键代码4.2.5备忘录用户登录云笔记网站,进入备忘录界面,备忘录界面如图4-13和4-14所示。图4-13 备忘录主界面图4-14 增加备忘录界面在备忘录界面,左侧导航栏分别有查看备忘录和增加备忘录两个功能选择,默认在查看备忘录的功能模块;点击查看备忘录,系统将根据用户ID查询该用户的备忘录信息,没有添加过备忘录界面不显示备忘录数据。用户需要点击增加备忘录,在界面中的输入框填写备忘录的详细信息,邮箱地址的输入框是不可操作的,由系统直接读取用户信息的邮箱,备忘录提醒用户的途径就是通过发送邮件到这个邮箱;点

41、击选择发送邮件的时间输入框,界面将会弹出时间工具插件,该时间插件使用的是Bootstrap-datetimepicker,用户可选择具体的备忘录发送时间,填写备忘录信息的内容,点击增加备忘录的按钮,备忘录信息被提交到后端,后端将备忘录信息插入到数据库,并把备忘录发送任务交给Quartz设置定时器任务,通过QuartzMannager类中调度器Scheduler绑定邮件发送的任务jobDetail和设定备忘录的具体时间的触发器trigger,开启执行任务,返回成功信息,页面就会自动跳转到查看备忘录的功能模块;当到了备忘录的规定时间,Quartz会自动执行任务(即发送邮件提醒用户备忘录设定的内容)

42、,使用的JavaMail设定邮件详情,通过调用mailSender发送出邮件,当邮件发送成功,系统改变备忘录在数据库的状态,状态将改成已发送15。在备忘录主界面,用户可以查看到备忘录的详细信息,在每个备忘录的后面都有修改和删除的操作,当备忘录的状态显示已发送,当前备忘录的信息将不可修改,修改操作也将被禁止,备忘录状态在数据库是以数字表示,0表示未发送,1表示已发送;用户修改某个备忘录的时候,点击修改操作,系统将弹出备忘录修改的模态框,支持备忘录的时间和内容修改,修改完成点击提交,系统后端的 Quartz将比对备忘录的时间是否有修改,如果备忘录发送时间被修改,Quartz将移除当前的任务,创建一

43、个新的发送任务,绑定调度器,重新开启新的任务;当用户不再需要某个备忘录,点击删除操作,系统后端会将备忘录信息从数据库中移除,如果当前的备忘录还未发送,系统还会调用Quartz停止触发器,并移除触发器和任务,任务将会被中止。备忘录关键代码如图4-15和4-16所示。图4-15备忘录关键代码图4-16备忘录关键代码4.2.6笔记笔记功能是整个系统中最核心的功能,将所有笔记操作汇集在一个界面,界面使用文字配合图标显示,还有功能操作使用图形按钮操作,非常清晰易于使用,整个笔记界面主要分为三个部分,分别是笔记、笔记本和笔记编辑界面。笔记界面如图4-17所示所示。图4-17笔记界面(1)笔记本模块用户登录

44、云笔记网站,进入到笔记界面,系统就会根据用户ID查询用户笔记本信息,将查询的笔记本信息显示在左边的笔记本模块中,如果用户没有添加过笔记本,将没有任何笔记本数据显示。在笔记本模块的右上方有新增笔记本的图形按钮,点击新增笔记本操作后,系统界面将出现笔记本新增的模态框,用户填写笔记本名称后,点击创建提交信息,系统会将笔记本信息存储到数据库,并返回创建成功信息给用户,新增的笔记本信息将出现笔记本列表中,笔记本列表是使用ajax技术动态显示,后续新增笔记本将会JS动态拼接到该笔记本后面。将鼠标光标移动到任意一个笔记本上,笔记本的左侧就会显示出删除笔记本的图形按钮,执行删除操作,目标笔记本信息将会界面中消

45、失。用户对笔记本进行双击操作,将弹出修改笔记本名称的模态框,填写完成后点击提交,笔记本显示的名称将被修改成新的名称。(2)笔记模块用户在笔记本模块中,点击选择任意一个笔记本,系统后端会根据笔记本的ID查询该笔记本下的全部笔记信息,系统将查询的笔记信息和操作信息封装起来返回给前端解析,笔记数据信息将在笔记列表显示,如果当前笔记本没有笔记,则提示用户创建笔记,在笔记模块的右上方有笔记新增图形按钮,用户点击新增操作按钮,笔记界面中间就会弹出新增笔记的模态框,在输入框中输入笔记名称,填写完成并点击创建,系统提示创建成功,笔记模块就会显示新增的笔记信息。当将鼠标光标移动到笔记上,笔记上就会出现一个下拉的

46、图形操作按钮,点击下拉的图形按钮,笔记中弹出4个图形按钮,分别是笔记分享,笔记收藏、笔记移动和笔记删除这四个功能按钮;笔记信息在数据库中的是以数字记录笔记状态,1表示笔记状态正常,2表示该笔记删除移动到回收站,3表示笔记已收藏,4表示该笔记已分享。选择某一笔记,点击笔记收藏按钮,后端数据库中的笔记状态更改收藏状态,操作完成系统返回成功信息,点击笔记收藏夹图形按钮,收藏夹列表将出现用户目标笔记;对笔记执行移动操作,系统界面出现笔记移动的模态框,选择需要移动至的目标笔记本,提交执行移动操作,前端提交移动至目标笔记本的笔记ID,后端将根据提交的信息更改数据库中笔记所属笔记本和笔记状态,原始笔记本中的

47、笔记将被移动至目标笔记本中;点击笔记删除操作,笔记将会进入回收站,打开回收站的列表模块,回收站将显示出删除的笔记,将鼠标光标移动到删除笔记上,笔记出现彻底删除按钮,点击删除,后端将根据笔记ID查询数据库笔记信息并将笔记信息删除,回收站的笔记信息也将移除掉;双击笔记操作,将弹出修改笔记名称的模态框,填写完成后点击提交,后端根据笔记ID修改数据库中的笔记名称,修改完成后,笔记显示的名称将被修改成新的名称;点击笔记分享操作,后端修改笔记状态,点击进入笔记分享广场模块,后端根据笔记ID和笔记状态查询用户笔记分享信息,查询成功,笔记分享信息将渲染在笔记分享广场页面,点击分享广场的笔记,后端根据笔记ID查

48、询笔记详情,页面跳转进入笔记详情页显示出笔记详细信息,查看笔记信息。笔记分享界面和笔记分享详情如图4-18,4-19所示。图4-18笔记分享界面图4-19笔记分享详情界面(3)编辑笔记模块 用户点击笔记模块中的笔记,后端根据笔记ID查询笔记信息,编辑笔记的界面中的富文本编辑框将加载出笔记的详细内容,用户对内容进行编写或者修改,点击保存笔记,笔记数据将提交到后端,后端对笔记信息进行规范验证,验证通过会将笔记数据进行持久化操作,新编写的笔记内容将被保存。笔记功能关键代码如图4-20和4-21所示。图4-20 笔记关键代码图4-21笔记关键代码4.2.7个人中心用户登录云笔记网站,进入个人中心模块,

49、后端查询用户收藏总数,备忘录的总数,笔记总数用户,返回结果给前端渲染出数据在界面中显示;向下滚动页面可以查看用户最近的动态,后端将查询用户注册时间,并计算出用户使用本系统的时间,还有查询笔记动态和备忘录动态最近编辑动态;用户点击注销,系统移除用户session,跳转至登录页面。个人中心界面图如图4-22所示。个人中心笔记,备忘录,收藏计数统计关键代码如图4-23所示。图4-22 个人中心界面图4-23 计数统计关键代码4.2.8关于网站用户登录云笔记网站,进入关于网站的页面,在页面的最后有评论反馈模块,评论反馈界面如图4-24所示。图4-24 评论反馈界面本模块主要提供用户发表对网站的评论和建

50、议,向下滚动可以看到用户输入评论信息输入框,用户输入信息,点击提交,后端将评论数据插入到数据库,页面将按评论楼层显示在页面。评论反馈关键代码如图4-25所示。图4-25 评论反馈关键代码第五章 系统测试系统测试是软件生命周期中的一个阶段,是对系统进行的一次检验,对测试结果进行分析,验证系统是否已经达到用户需求和对系统层面上的需求。 本章将详细介绍系统测试要求和分析测试结果。5.1测试环境本系统的测试环境如表5-1所示:表5-1 系统测试环境表系统环境信息服务器配置8G内存,CentOS操作系统,JDK1.8,数据库Mysql5.7,服务器Tomcat8.5,2T硬盘客户端装置windows10

51、操作系统,4G内存,256G以上硬盘,谷歌、火狐,IE10以上的浏览器5.2功能测试 在对本网站的功能测试中,为云笔记网站的各个功能模块进行编写测试用例,验证功能是否与功能需求分析一致。 (1)笔记功能模块包括收藏夹、笔记移动、笔记共享、笔记本管理、笔记管理等功能,其功能测试用例如表5-2所示。 表5-2 笔记模块测试用例表用例编号用例描述操作步骤预期结果测试结果1-01新建笔记本1、 登录云笔记网站2、 点击新建笔记本按钮3、 填写笔记本信息,点击创建笔记本笔记本列表显示新增的笔记本验证通过1-02新建笔记1、 登录云笔记系统2、 选择笔记本,点击新建笔记按钮3、 填写笔记信息,点击新建笔记

52、列表出现新建的笔记验证通过1-03笔记编写1、 登录云笔记网站2、 选择笔记,编写笔记内容,并保存点击笔记显示笔记内容验证通过1-04笔记移动1、 登录云笔记网站2、 选择笔记,点击移动笔记按钮3、 选择移动至的笔记本原始笔记本的笔记被移动到了目标笔记本验证通过1-05笔记收藏1、 登录云笔记网站2、 选择笔记,点击收藏按钮收藏夹中出现收藏的笔记验证通过1-06笔记回收站1、 登录云笔记网站2、 选择笔记,点击删除笔记按钮目标笔记本的笔记被删除,回收站出现删除的笔记验证通过1-07笔记分享1、 登录系统2、 选择笔记,点击笔记分享按钮笔记分享广场出现分享的笔记验证通过(2)备忘录模块包括备忘录

53、管理,备忘录定时发送,备忘录状态等功能,其功能测试用例如表5-3所示表5-3备忘录功能模块测试用例编号用例描述操作步骤预期结果测试结果2-01备忘录增加1、 登录云笔记网站2、 填写备忘录信息备忘录界面出现新增的备忘录验证通过2-02备忘录修改1、 登录云笔记网站2、 修改备忘录信息,点击保存备忘录信息已修改成验证通过2-03备忘录删除1、 登录云笔记网站2、 点击删除备忘录按钮备忘录界面的目标备忘录信息被删除验证通过2-04备忘录邮件发送1、 登录邮箱,打开账号邮箱查看邮件在设定时间,邮箱出现备忘录邮件验证通过2-05备忘录状态1、 登录云笔记网站2、 查看已过设定时间的备忘录备忘录状态改变

54、成已发送验证通过(3)网址检索模块包括网址管理,网站检索等功能,其功能测试用例如表5-4所示表5-4网站检索功能模块测试用例编号用例描述操作步骤预期结果测试结果3-01网址增加1、 登录云笔记网站2、 填写网址信息,添加网站收藏打开网址管理页面出现添加的网址验证通过3-02网址删除1、 登录云笔记网站2、 在网址管理页面删除任意一个网址网址管理页面中被删除的网址消失验证通过3-03网址检索1、 登录云笔记网站2、 在搜索框输入任意一个已经存储的网址页面中出现搜索的目标网址验证通过5.3非功能测试非功能性测试是对需求分析阶段中的非功能性需求进行验证16。本节将对系统进行性能测试,安全测试,以及兼容性测试。响应时间是评估系统性能的重要标准之一,对于用户的系统操作,长时间的等待会造成用户的体验感大大下降17。因此,本文将对系统操作的页面响应时间进行测试。测试结果如图5-5所示 表5-5 系统页面响应时间测试表用户操作预期反应时间(平均时间)实际反应时间(平均时间)注册账号1.2s0.9s登录1.2s0.9s点击各个功能模块2s1.3s接着将转移到安全方面的测试,测试内容主要是针对

温馨提示

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

评论

0/150

提交评论