基于SSM的云笔记的设计与开发毕业论文.docx
- 文档编号:9483815
- 上传时间:2023-02-04
- 格式:DOCX
- 页数:51
- 大小:1.77MB
基于SSM的云笔记的设计与开发毕业论文.docx
《基于SSM的云笔记的设计与开发毕业论文.docx》由会员分享,可在线阅读,更多相关《基于SSM的云笔记的设计与开发毕业论文.docx(51页珍藏版)》请在冰豆网上搜索。
基于SSM的云笔记的设计与开发毕业论文
---文档均为word文档,下载后可直接编辑使用亦可打印---
摘要
在传统的教育中,一般都是使用纸张进行笔记记录;教育信息化成为互联网时代发展应用于教育的一个趋势,网络上出现了很多在线学习的平台,学生在进行网络学习时需要记录笔记。
一个良好的云笔记网站,能够使得学生笔记撰写和管理更加方便。
为此,以云笔记网站的设计与开发为题展开了论文的撰写工作。
系统采用B/S模式结构,主要使用Java语言,基于Java的SSM框架进行开发实现。
主要功能实现是以笔记功能为主,支持笔记的分享,收藏,移动,以及笔记回收站功能;本系统还有天气,收藏检索,聊天和备忘录等附加功能。
笔记功能基本满足学生学习使用的要求,附加的便捷功能将为学生提供更丰富的使用需求。
本课题实现的云笔记和互联网技术的结合,能有效提高用户的学习效率和方便用户对笔记管理。
关键词:
云笔记系统SSM
Abstract
Intraditionaleducation,paperisgenerallyusedfortakingnotes;EducationinformatizationhasbecomeatrendappliedtoeducationintheInternetage.ManyonlinelearningplatformshaveappearedontheInternet.Studentsneedtotakenoteswhendoingonlinelearning.Agoodcloudnotewebsitecanmakestudentnotewritingandmanagementmoreconvenient.Tothisend,thedesignofthecloudnotewebsiteandthedevelopmentofthepaperbegantheworkofwritingpapers.
ThesystemadoptsB/Smodestructure,mainlyusesJavalanguage,andisdevelopedbasedonJavaSSMframework.Themainfunctionimplementationisbasedonthenotefunction,whichsupportsnotesharing,collection,movement,andnoterecyclebinfunctions;thesystemalsohasadditionalfunctionssuchasweather,collectionretrieval,chat,andmemo.Thenotefunctionbasicallymeetstherequirementsofstudents'learninganduse,andtheadditionalconvenientfunctionswillprovidestudentswithmoreabundantuserequirements.ThecombinationofcloudnotesandInternettechnologyimplementedinthisprojectcaneffectivelyimprovetheuser'slearningefficiencyandfacilitatetheuser'smanagementofnotes.
Keywords:
cloudnotesystemSSM
第一章绪论
本章首先介绍了笔记平台的背景和发展现状,对笔记平台的发展和前景进行了深入分析与总结,提出了对于本课题的研究内容,并对其进行详细阐述。
1.1课题背景
互联网的发展和普及,学生学习方式也越来越多样化。
促使着社会走上飞速发展的道路。
在我国,互联网已经在社会上占领着非常重要的地位,由于互联网的实时性和高效性,人们能从网络上快速获取各方面的信息。
在互联网+的时代,教育和互联网技术融合起来,使网络上兴起许多K12的教育平台,由于这些教育平台结合了优质的教育资源,以及解决了传统教育方式的不足之处,使得学生能够高效地获取所需知识,非常受到学生们的欢迎;相信今后的教育学习与互联网的联系也会越来越多。
学生在使用互联网教育平台学习时,由于在学习的过程会有一些重要的知识点需要记录,传统的笔记记录非常不便,使用的时候查找起来也比较费时,也削弱了互联网学习的优势。
基于此,本文将互联网技术与笔记结合起来,设计实现了云笔记网站。
云笔记网站主要为在互联网学习的用户提供笔记记录,学生在学习过程可以使用互联网随时随地的记录笔记,在平时中利用空闲的时间学习笔记知识重点,并可在平台上分享自己对于笔记的所思所想,学生们通过笔记分享互相参考,互相学习,提高学习的效率和个人知识水平。
1.2课题现状
目前从网络上看,网络教育平台兴起不久,笔记平台的使用者也比较少,一般以学生用户居多,还有少部分工作者使用;网络上的笔记平台不多,其功能针对性较强,也比较单一。
市面上用户使用的比较多的是印象笔记和有道云笔记,也是比较得到用户青睐的笔记平台。
这些笔记平台主要侧重于事件记录,没有其它吸引用户的扩展功能,成为了制约笔记平台发展的高度。
随着网络教育的模式迅速发展,以网络教学的优势必定使网络教育平台迈上一个新的高度,辅助教育的笔记平台也将迎来一个新的春天。
通过上述对笔记平台的分析,分析出目前笔记平台的功能比较专注单一,缺少特色的功能,以及网络教育刚起步导致使用的用户较少。
但随着网络技术的不断发展和越来越多人使用网络学习,笔记平台将跟着用户的使用需求变化,功能也将越来越完善,使用的用户也将日益增多,必将受到学生们的追捧。
1.3研究内容
本文将对云笔记网站进行详细的分析,从用户的需求和产品开发的角度,设计并实现了一个在线笔记的平台网站,有效解决了学生们网络学习的笔记记录效率问题。
本文的研究内容如下:
(1)首先通过分析目前互联网上的笔记平台的优点,并结合对用户的功能需求调研,以及个人的一些创新点,确定出系统的需求。
(2)根据上述对于云笔记网站的需求分析,对云笔记网站的功能进行详细设计,设计出云笔记网站的功能架构,并对各个功能模块和展开数据库中的每一个实体表进行详细设计。
(3)对于上述的需求分析和系统详细设计,明确出系统开发的环境和工具,对云笔记网站的关键实现技术进行相应的介绍,分析使用的技术优点,更好地应用技术是是实现系统功能和扩展功能。
对云笔记网站的各个功能模块进行是实现。
(4)对云笔记网站的核心功能模块进行相关的功能性和非功能性上的测试,并分析对比测试结果是否符合系统需求。
(5)对于整个项目的开发和设计进行了总结和展望,明确本文的研究结果,提出项目存在的不足,并在后续的工作中对其进行不断优化。
第二章需求分析
需求分析是一个产品研发的前期阶段的重要工作内容[1]。
整个需求分析需将用户的真正需求转为产品需求,以及结合系统后续扩展稳定性方面。
最终,确立出系统的总体需求。
本章将对云笔记网站的需求进行具体地分析。
2.1功能性需求分析
在对系统功能性需求分析中,我们需要挖掘用户内心真切需求,通过对需求的分析于提炼,形成产品的最终需求[2]。
云笔记网站主要面向的是学生、老师和部分工作使用者,本文将探寻和分析这些用户的需求,并结合我自己对该系统一些功能上的想法扩展,最后分析和梳理出该系统功能需求。
以下是通过用例图描述分析总结出来的结果:
用户能够进行注册并登录云笔记网站,并能在该系统进行笔记基本操作,在笔记广场浏览用户分享笔记,我还增加了一些特色的功能,包括查看天气,聊天交流,网址检索和备忘录功能。
其用例图如图2-1所示:
图2-1系统用例图
云笔记网站主要为用户提供便捷功能,结合以上的用例图对于系统功能的分析,分析总结出系统需要提供注册登录、天气查看、聊天、网址收藏检索、备忘录、笔记、笔记分享、个人中心、评论反馈等功能;下面将通过对笔记网站的功能进行分析,并能对其进行详细阐述。
(1)注册、登录:
使用云笔记网站的用户都需要进行身份验证,所以需要提供注册登录功能。
注册需要使用个人邮箱作为用户账号,为了更好的给用户在账号忘记密码的情况提供验证,验证使用邮件发送修改密码链接,用户的账号将得到更好的安全保障。
(2)聊天:
使用云笔记网站的用户,用户可以在线交流笔记撰写心得,以及笔记的重点,用户进入该模块与在线用户进行聊天交流,发送弹幕聊天信息,所有用户的聊天信息都会在界面弹幕滚动显示。
其用例图如图2-2所示:
图2-2聊天用例图
(3)网址收藏检索:
对于每个网络用户来说,总有几个经常访问的网站,还有用户在进行笔记撰写时需要参考一些网络上的知识和资料,就需要把网址保存起来,但如果仅仅只是做一个收藏夹保存起来的话,用户需要访问的时候需要花费一定时长去收藏列表里寻找网址,所以网址需要有一个命名,系统提供一个网址检索功能,用户在保存网址的时候对其命一个简单有含义的名称,在需要访问某个网址的时候,只需用户输入命名检索即可访问,并提供网址管理功能方便用户删除不再需要的网址。
其用例图如图2-3所示:
图2-3网址检索用例图
(4)备忘录:
在该模块中,用户使用备忘录需要有基本的备忘录填写内容,设定备忘录提醒的时间,在备忘录到设定提醒时间时,需要有一个提醒用户的途径,所以本系统采用邮件通知的方式发送邮件告知用户备忘录的详细内容,邮件地址使用是用户注册的邮箱地址;用户在备忘录没发送时,系统可提供备忘录信息修改的功能;当一些备忘录信息用户已经不再需要时,可删除不必要的备忘录信息。
其用例图如图2-4所示:
图2-4备忘录用例图
(5)笔记:
笔记功能模块是云笔记网站中主打的功能,需要提供最方便快捷的笔记记录操作,对于用户来说,往往记录的不止一种类型的笔记,因此,云笔记系统需提供笔记本功能,提供用户来分类不同类型的笔记,使用户在复习笔记时通过标记类型的笔记本列表更加方便快捷的查找并查看笔记,同时系统也提供删除笔记本的操作;有了笔记本,用户可以根据自己划分的类型使用任意一个已经创建完成的笔记本,在该笔记本下创建笔记;为了使用用户编辑笔记更加灵活方便,笔记编辑提供富文本编辑器,可根据自己喜好设置文字样式,字体大小,以及段落格式;笔记创建完成后,用户可对其修改、移动、删除、收藏和分享;笔记的移动可以将目标笔记移动到任意一个已经创建的笔记本,笔记的删除则会提供二次删除,防止用户的误删除,首次对笔记进行删除操作,笔记不会完全消失,笔记将会放到笔记回收站中,在回收站中对笔记进行第二次删除才会将笔记彻底清除,进入到回收站的笔记,用户还可对其进行恢复。
笔记的收藏在对某一个笔记点击收藏时,笔记将会加入到收藏夹,在收藏夹中,用户可以进行查看收藏的笔记,或对笔记进行取消收藏。
笔记分享功能提供用户在本网站对笔记信息共享,被分享的笔记将会进入到笔记分享广场,供其它用户浏览和参考。
其用例图如图2-5所示:
图2-5笔记用例图
(6)个人中心:
用户可进入个人中心查看网址收藏数量,备忘录数量和笔记数量的统计,还可以查看用户使用云笔记网站的动态。
此外,个人中心提供用户注销登录。
其用例图如图2-6所示:
图2-6个人中心用例图
(7)评论反馈:
评论反馈模块主要提供用户对于网站的建议,在网站进行评论反馈。
2.2非功能性需求分析
非功能性需求为了系统操作层面上的需求,是需要分析的重要组成部分,非功能性需求将对决定一个软件所能到达的高度,开发人员需重点关注的,否则将直接影响到整个系统的运行和使用。
本文将从以下的几个方面进行详细的阐述。
(1)安全性:
云笔记系统中的笔记、备忘录等信息属于用户隐私信息,用户需要通过账号、密码登录云笔记系统,成功完成登录认证才能使用网站的功能,忘记密码时需要使用发送邮件验证邮箱账号,用户密码采用加盐加密存储在数据库。
(2)响应时间:
用户点击系统上的某一个功能模块,系统一般响应时间不超过1.6s,并能准确地响应出操作结果。
(3)兼容性:
系统应能兼容市面上各大主流的浏览器,例如谷歌浏览器,火狐浏览器以及IE9.0版本以上的浏览器。
(4)可靠性:
系统应该对一些输入提供验证提示,对输入数据进行检验,防止提交数据造成系统异常,系统中的笔记等功能操作应提供弹窗提示操作结果,给予用户反馈以便用户进行后续的系统操作。
(5)易用性:
系统中的操作大多都使用简约风格的按钮,每个操作完成后,系统会提示用户的操作结果,各功能模块清晰明了,便于用户操作使用;界面的颜色,布局都是市面上主流的设计,整个系统页面风格基本一致,不会有太大的跳跃。
(6)健壮性:
系统对全部输入的数据提供校验,并对用户进行提示操作结果,防止异常的数据进入后端,从而使系统出现瘫痪无法处理任何请求。
对于系统并发优化设计,多个用户对系统进行连续操作,不会对系统正确的响应造成影响。
第三章系统设计
本章首先从总体上对云笔记网站的系统架构、功能结构进行了概要设计,其次使用统一建模语言,结合需求分析对云笔记系统中的各功能模块进行详细的分析和设计。
此外,还对本系统的数据库结构设计进行了详细描述。
3.1系统总体设计
3.1.1系统架构设计
云笔记网站使用的是B/S架构为基础,前端采用Bootstrap框架为主,还有部分开源的CSS样式,实现美观的界面布局,后端使用Java的SSM框架进行开发,系统的登录认证采用Shiro框架,备忘录的邮件定时发送使用Quartz任务调度框架实现,网址收藏检索使用Elasticsearch存储网址索引,实现网址的快速检索[3-6]。
3.1.2功能结构设计
根据系统的功能性分析,确定出了云笔记网站的基本的功能模块,云笔记网站的功能模块包括注册登录模块、天气模块,在线交流模块,网址检索模块,备忘录模块,笔记模块,笔记分享模块,个人中心模块,评论反馈模块等模块。
云笔记主要功能模块图如图3-1所示。
图3-1功能架构图
3.2系统功能模块设计
由云笔记网站的功能结构设计可以看出本网站的主要功能,本章由此展开,对云笔记网站的部分功能设计进行具体描述。
3.2.1网址收藏检索模块设计
网址收藏检索功能是考虑到用户在记录笔记的时候,经常需要参考一些网络上你的文献资料,用户记录笔记有时因为时间原因,需要第二天才能继续编写笔记,如果重新查找参考资料的网页会非常麻烦。
此时,网址收藏检索提供用户保存网址到收藏夹,对网址进行命名标记,使用命名对收藏夹进行快速检索,并跳转到网址页面。
查看网站收藏检索流程如图3-2所示。
图3-2网站收藏检索流程图
3.2.2备忘录模块设计
备忘录提供给用户记录重要事项,在用户设定备忘录具体时间,用户注册账号的邮箱会收到一封备忘录的提醒邮件。
用户进入备忘录的功能页面,通过创建备忘录,就可在备忘录的主界面中看到新增的备忘录详情。
在备忘录还没到提醒时间时,即未发送提醒邮件时,用户可以对备忘录的发送时间和内容进行修改,修改完成后,备忘录将按照新的信息执行提醒任务,如果用户不再需要某些备忘录,可对其进行删除。
其备忘录管理流程图如图3-3所示。
图3-3备忘录管理流程示意图
3.2.3笔记模块设计
笔记功能模块包括笔记分享,笔记移动,笔记收藏,回收站。
下面将对个功能进行详细描述。
笔记功能结构图如图3-4所示:
图3-4笔记功能结构图
(1)笔记收藏:
笔记模块有一个专门的笔记收藏列表,用户通过点击笔记收藏的操作,被执行的操作的笔记将会加入的收藏夹,用户也可对收藏夹中的收藏笔记进行取消收藏操作,该笔记将从收藏夹中移除。
(2)笔记移动:
用户可将某一笔记本中的笔记移动至其它笔记本中。
用户通过点击笔记移动功能,选择需要移动至的目标笔记本,即可完成对笔记移动。
(3)笔记分享:
当笔记被用户执行分享操作时,被分享的笔记会在笔记分享广场列表中的显示,供其他用户借鉴和学习。
用户点击页面中的笔记,可以查看笔记的详细信息。
(4)笔记回收站:
被用户对笔记执行删除操作后,笔记将会到达笔记回收站,当用户不小心对笔记进行误删除,可以对笔记进行恢复,如果用户确定不再需要该笔记,可以对回收站的笔记进行彻底删除,该笔记信息将从系统彻底移除。
(5)编辑笔记:
用户选择一个笔记,对笔记的内容信息进行编辑后,并保存笔记,笔记的编写格式和内容就进行持久化操作。
3.2.4评论反馈模块设计
评论反馈模块提供界面用户发表对网站的一些建议和评论。
用户进行评论后,系统会先验证内容是否为空,以及是否符合系统限制要求,提交评论将会在评论列表显示。
评论反馈的时序图如图3-5所示。
图3-5评论反馈的时序图
3.3数据库设计
本节将通过需求抽象出数据库E-R图,并围绕数据库E-R图对系统涉及的每一个数据库表进行具体描述。
3.3.1数据库概念设计
数据库概念设计是将用户描述的需求提炼并抽象成一个数据概念模型[7-9]。
下文将对业务实现的功能进行分析得出设计数据库所需的实体,明确各实体之间的关系并绘制出数据库的E-R图。
本系统中涉及的实体有用户,备忘录、笔记、笔记本、评论反馈。
数据库E-R图如图3-6所示。
图3-6数据库E-R图
3.3.2数据库表设计
本节将对数据库E-R图中的各个实体设计出详细的表结构,并对设计的表进行详细描述。
(1)用户表
用户表存放着网站用户的信息,如表3-1所示。
表3-1用户信息表
表名
user
字段名
数据类型
约束
描述
user_id
varchar(50)
主键,非空
用户ID
nickname
varchar(20)
非空
用户昵称
password
varchar(32)
非空
用户密码
varchar(50)
非空
用户邮箱
actite_state
int
非空
账号状态(0未激活,1激活)
code
varchar(50)
非空
验证码
salt
varchar(50)
非空
加密盐
exptime
datetime
非空
过期时间
register_time
datetime
非空
注册时间
(2)备忘录表
备忘录存放着备忘录内容,备忘录发送时间,备忘录当前状态,最近编辑时间等信息,如表3-2所示:
表3-2备忘录信息表
表名
memo
字段名
数据类型
约束
描述
memo_id
varchar(50)
主键,非空
备忘录ID
user_id
varchar(50)
外键,非空
用户ID
send_time
datetime
非空
发送时间
edit_time
datetime
非空
最近编辑时间
state
int
(2)
非空
备忘录当前状态(0未发送,1已发送)
memo_content
varchar(225)
非空
备忘录内容
(3)笔记本表
笔记本存放着笔记本命名,笔记本创建时间等信息,如表3-3所示:
表3-3笔记本信息表
表名
book
字段名
数据类型
约束
描述
book_id
varchar(50)
主键,非空
笔记本ID
user_id
varchar(50)
外键,非空
用户ID
book_name
varchar(50)
非空
笔记本名称
book_create_time
Bigint(20)
非空
笔记本创建时间
(4)笔记表
笔记存放着用户创建笔记的信息,如表3-4所示
表3-4笔记信息表
表名
note
字段名
数据类型
约束
描述
note_id
varchar(50)
主键,非空
笔记ID
user_id
varchar(50)
外键,非空
用户ID
book_id
varchar(20)
外键,非空
笔记本ID
status_id
varchar(32)
非空
笔记状态(1正常,2删除,3收藏,4分享)
note_title
varchar(50)
非空
笔记标题
note_content
text
可为空
笔记内容
note_create_time
bigint(50)
可为空
笔记创建时间
note_modify_time
bigint(50)
可为空
笔记最近修改时间
(5)用户评论反馈表
用户评论反馈存储用户评论的具体信息,如表3-5所示
表3-5用户评论反馈表
表名
commment
字段名
数据类型
约束
描述
commment_id
varchar(50)
主键,非空
评论ID
user_id
varchar(50)
外键,非空
用户ID
content
text
非空
评论内容
create_time
datetime
非空
评论时间
第四章系统实现
云笔记网站是基于用SSM(SpringMVC+Spring+Mybatis)框架实现,并使用Elasticsearch和Quartz技术实现具体业务功能,以及使用Shiro框架完成登录认证,前端则采用Bootstrap框架。
本文将对系统的具体实现进行详细描述,并展示云笔记网站中个功能模块的界面和功能实现的关键代码。
4.1开发平台与相关技术
4.1.1开发环境与工具
本系统设计基于B/S架构,用户浏览器即可访问并登录云笔记网站,系统使用IDEA进行开发,系统运行前需安装Elasticsearch环境,Maven管理jar包[10]。
开发环境和开发工具如表4-1所示。
表4-1系统开发环境与工具表
项目
系统环境
开发工具
IntelliJIDEA2018.3.5
Elasticsearch
Elasticsearch2.3.3
JDK
jdk1.8.0_201
Web服务器
Tomcat8.5
数据库
MySQL5.7
项目管理工具
Maven3.6.0
4.1.2开发技术
(1)Elasticsearch技术
Elasticsearch是一个分布式,实时搜索和分析数据的引擎,通常用作搜索和数据分析[11]。
Elasticsearch能对存储于的其中数据进行快速搜索,并对搜索结果进行分析,这就得益于一种称为倒排索引的存储结构。
倒排索引也可称之为反向索引,是指将数据内容解析分解成对应的关键字,用关键字作为索引,数据内容作为索引值存储到Elasticsearch当中。
所以,当用户在使用Elasticsearch进行全文检索时,分词器会对输入数据进行分词,利用分词检索数据,搜索出来的词条会按匹配度进行打分,最后按匹配分数排序显示给用户。
(2)Quartz技术
Quartz是一个功能强大任务调度框架,用户可使用Quartz任务调度框架可以创建简单或复杂的计划,Quartz可用于定时作业调度和对调度作业管理,Quartz的CronTrigger可灵活设置任务调度时间,作业调度也灵活。
Quartz调度程序还可对JTA事务和群集的支持。
(3)Shiro技术
Shiro作为Java的安全框架,有着强大功能。
Shiro的API使用非常简单,Shiro技术一般多应用于实现系统的身份认证和权限管
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 SSM 笔记 设计 开发 毕业论文