基于SSM的生活故事分享交流博客系统
摘要
随着互联网技术的快速发展,无论是人们的生活还是工作,互联网技术都带来了很多的方便,人们通过互联网技术不仅能够提高工作效率还能够降低出错的几率。由于目前很多生活故事分享交流博客系统发展还没较为成熟,在管理上存在着不少的问题,因此设置一个较为成熟的生活故事分享交流博客系统能够方便用户和提高管理员管理的效率。
本生活故事分享交流博客系统使用了开源框架SSM和Vue开发实现了生活故事分享交流博客系统,并且使用了开发工具和数据库MySQL。在开发实现生活故事分享交流博客系统之前,需要对系统进行需求分析和调研,从而分析出生活故事分享交流博客系统需要具备什么样的功能,设计出对应的总体架构,开发实现完生活故事分享交流博客系统之后还需要对系统进行测试。
关 键 词:SSM, Vue, MySQL
Life Story Sharing and Exchange Blog System Based on SSM
Abstract:With the rapid development of Internet technology, whether it is people's life or work, Internet technology has brought a lot of convenience. People can not only improve work efficiency, but also reduce the probability of making mistakes through Internet technology. At present, many life story sharing and exchange blog systems are not mature, and there are many problems in management. Therefore, setting up a more mature life story sharing and exchange blog system can facilitate users and improve the efficiency of administrator management.
This life story sharing and exchange blog system uses the open source framework SSM and Vue to develop and realize the life story sharing and exchange blog system, and uses the development tool and database mysql. Before developing and implementing the life story sharing and exchange blog system, we need to conduct demand analysis and Research on the system, so as to analyze what functions the life story sharing and exchange blog system needs to have, design the corresponding overall architecture, and test the system after developing and implementing the life story sharing and exchange blog system.
Keywords: SSM, Vue, MySQL
目 录
第一章 作品简介........................................................................................................ 1
1.1 研究背景......................................................................................................... 1
1.2 选题意义......................................................................................................... 1
1.3 研究内容......................................................................................................... 1
1.4 关键技术......................................................................................................... 2
1.4.1 Eclipse................................................................................................... 2
1.4.2 MySQL数据库.................................................................................... 2
1.4.3 SpringMVC........................................................................................... 2
1.4.4 Spring.................................................................................................... 2
1.4.5 MyBatis................................................................................................. 3
第二章 作品安装及使用说明................................................................................... 4
第三章 需求分析........................................................................................................ 6
3.1 可行性分析..................................................................................................... 6
3.1.1 社会可行性.......................................................................................... 6
3.1.2 技术可行性.......................................................................................... 6
3.2 功能分析......................................................................................................... 7
3.2.1 用例概述.............................................................................................. 7
3.2.2 用例描述.............................................................................................. 8
3.3 非功能性需求分析....................................................................................... 14
第四章 系统设计...................................................................................................... 15
4.1 功能设计....................................................................................................... 15
4.2 功能模块....................................................................................................... 17
4.3 数据库设计................................................................................................... 18
4.3.1 概念模型设计.................................................................................... 18
4.3.2 物理模型设计.................................................................................... 18
第五章 系统实现...................................................................................................... 22
5.1 分类管理....................................................................................................... 22
5.2 文章管理....................................................................................................... 22
5.3 个人相册管理............................................................................................... 23
5.4 链接管理....................................................................................................... 23
5.5 文章展示....................................................................................................... 24
5.6 文章详细信息............................................................................................... 24
5.7 链接展示....................................................................................................... 25
5.8 链接详细信息............................................................................................... 26
第六章 软件测试...................................................................................................... 28
6.1 测试目标和方法........................................................................................... 28
6.2 测试用例....................................................................................................... 28
6.3 性能测试....................................................................................................... 30
第七章 总结与展望.................................................................................................. 32
7.1 总结............................................................................................................... 32
7.2 展望............................................................................................................... 32
参考文献..................................................................................................................... 33
致 谢......................................................................................................................... 34
快速发展的互联网普遍涉及到了我们生活的很多方面上,用户随时随地都可以享受互联网所带来的好处,具有想象力的程序开发者已经利用互联网开发出了很多高科技的工具。随着信息技术地不断发展,互联网会带给人们越来越多的好处,同时互联网带来新的理念会改变人们原有的工作模式。随着信息化的社会快速发展,管理员使用手工的方式管理用户分享交流生活故事越来越费力,如果管理员还是依赖于手工的方式管理用户分享交流生活故事,那么这会导致管理员工作的效率不高。因此,一个生活故事分享交流博客系统能够用来提高管理员的效率,一个良好的生活故事分享交流博客系统会给用户和管理员带来较多好处,提高管理员效率的同时还能创造出不少的价值[1]。
伴随着我国推动信息化的社会快速发展,国内不少行业工作的方式改为计算机协助管理,博客平时日常运行的时候会产生着大量的数据,管理员为了能够及时地了解数据的变化,因此需要对这些数据进行科学地管理,这样能够提高管理员的工作效率。在以前管理用户分享交流生活故事的时候存在着不少的缺点,并且大多数情况是管理员对其进行管理,这样存在着管理员工作效率不高和容易出错的特点。由了生活故事分享交流博客系统,管理员不仅能够节约时间而且还能够高效率地工作,有了更多的时间对系统进行改进[2],除了提供高效的管理效率之外还能够提供更好的服务,使得用户能够更好地体验。
传统的生活故事分享交流博客系统在管理上不仅存在着大量的缺陷,而且采用的是人工的方式进行管理,出错率极高,因此良好的生活故事分享交流博客系统可以给用户带来良好的便捷性。将工作人员从繁杂的工作中解脱出来。综上,本次分析并实现了生活故事分享交流博客系统。
总体来说,生活故事分享交流博客系统融合了先进的互联网技术,本次设计并实现的生活故事分享交流博客系统汲取了计算机高速处理的能力,并把业务逻辑由计算机进行处理,以此降低了系统开发的成本。基于研究内容安排论文的结构为如下:
研究生活故事分享交流博客系统的背景和选题意义,研究开源框架的原理和交互方式,按照软件工程的规范对生活故事分享交流博客系统进行设计,包括系统数据库和功能模块的设计。然后对生活故事分享交流博客系统的核心功能进行说明[3]。
Eclipse编译器底层代码由Java代码编写而成,并且本身内部集成了不少的开发插件。Eclipse编译器内部代码是开源的,提供了一个便于二次开发的平台。Eclipse编译器的开发需要围绕着很多的原则,原则包括高可用和安全等。Eclipse编译器刚被人们开发出来的时候只能够编写Java语言,随着技术不断地更新,Eclipse编译器能够编写更多的编程语言。
MySQL数据库属于不同数据型关系数据库中的一种,程序员在开发Web程序的时候通常使用存储系统信息的数据库为MySQL数据库。关系型数据库能够把系统的信息存放在关系表当中,这种方式不仅能够提高程序员查询系统的速度还能够提高系统的性能。MySQL被人们划分为两种版本,分别是社区版和商业版,用户可以使用免费开源的社区版本,而且性能也算得上卓越。
SpringMVC框架是在MVC模式作的改进,隶属于Spring框架的一个子框架。如果在开发Web项目的时候使用到了Spring框架,那么还可以组合使用SpringMVC框架。SpringMVC的工作流程为用户发起请求的时候,需要被web.xml里面配置的DispatcherServlet进行拦截用户的请求并进行处理,处理后的数据通过页面显示给用户。
Spring框架包含了七大模块,这七个模块在使用的时候可以单独使用,也可以多个模块结合使用。Spring框架组合中包括了核心容器,该模块是Spring框架的基础亦是核心模块。核心容器的主要模块为BeanFactory,BeanFactory很大程度上能够体现工厂模式,它可以利用IOC功能能够将代码和程序配置分离开来。
Spring框架能够将SpringMVC和MyBatis与自身组合起来能够供于Web项目程序开发者进行调用。Spring框架相当于一个大工厂,能够管理注解,并通过声明式事务对数据库的操作进行管理。
MyBatis属于开源的ORM框架,它的前身是Apache的一个名为iBatis的开源项目,在2010年的时候,iBatis项目由Apache基金会正是命名为MyBatis,到了2013年的时候,MyBatis项目的代码被迁移到了网站Github中。MyBatis框架通过映射化的语句操作数据库记录,这样有利于减少冗余的代码而且手动地设置结果集。
idea导入项目要选择根目录。
图2-1 项目导入
安装MySQL5.7的时候需要注意选择好相关配置,设置密码为123456。
图2-2 MySQL5.7安装
安装Navicat for MySQL的时候需要把数据库SQL语句导入到MySQL中。
图2-3 Navicat for MySQL安装
可行性分析是指在开发项目之前分析生活故事分享交流博客系统的可行性,从诸多方面进行分析,例如技术、经济和社会等方面的问题,目的是减少未来开发生活故事分享交流博客系统遇到的困难[4]。
在上个世纪90年代的时候,中国博客市场有了初步的发展,经过多年来的发展,我国的博客行业开始进入到了良好的发展道路之上。博客行业已经成为我国经济的很重要的一部分。时至今日,我国网络用户的数量还在不断增长中,用户的网上交流理念发生了变化,对博客的需求变得更高了。本次开发的生活故事分享交流博客系统没有违法并且没有违反道德,从法律道德上来说是可行的。
系统在设计实现的时候选用的软件和开发技术为程序开发者所经常使用的,结合市场上同种类型的生活故事分享交流博客系统,本次开发的生活故事分享交流博客系统在技术上是可行的。并且能够在开发出可用的生活故事分享交流博客系统前提下做到较低的开发成本。此次开发的生活故事分享交流博客系统有形成的系统可以参考,因此后期技术升级和维护有一定的保障[5]。
图3-1 用户用例图
图3-2 管理员用例图
用例的简要描述如表3.1所示。
表3-1 用例描述
用例标识(UC) | 用例名称 | 摘要描述 |
1 | 注册登录 | 用户和管理员通过登录功能才得以使用系统的功能 |
2 | 查看文章信息 | 用户登录系统之后可以查看文章信息 |
3 | 收藏管理 | 用户登录系统之后可以收藏文章 |
4 | 评论管理 | 用户登录系统之后可以评论文章 |
5 | 查看链接信息 | 用户登录系统之后可以查看链接信息 |
6 | 个人中心 | 用户和管理员登录系统之后可以修改个人信息 |
7 | 用户信息管理 | 管理员在用户信息管理功能中管理用户的信息 |
8 | 文章信息管理 | 管理员和用户在文章信息管理功能中管理文章的信息 |
9 | 链接信息管理 | 管理员和用户在链接信息管理功能中管理链接的信息 |
10 | 分类信息管理 | 管理员在分类信息管理功能中管理分类的信息 |
11 | 标签信息管理 | 管理员在标签信息管理功能中管理标签的信息 |
12 | 链接类型信息管理 | 管理员在链接类型信息管理功能中管理链接类型的信息 |
13 | 个人相册信息管理 | 管理员和用户在个人相册信息管理功能中管理个人相册的信息 |
14 | 系统信息管理 | 管理员在系统信息管理功能中管理系统的信息 |
1.文章信息管理
文章信息管理用例描述能够描述系统中的文章信息管理功能,文章信息管理用例描述如表3-2所示。
表3-2 文章信息管理用例描述
用例标识 | 3.1 |
用例名称 | 编辑文章的相关信息 |
参与者 | 管理员和用户 |
前置条件 | 管理员需要输入正确的用户名和密码登录系统 |
后置条件 | 修改文章信息 |
用例概述 | 管理员修改文章信息 |
基本事件流 | 1.管理员输入正确的用户名和密码登录到系统当中 2.管理员在文章信息管理界面点击添加按钮提交新添加的文章信息 3.文章信息添加成功 |
备选事件流 | 4a 输入的信息需要合法才能够成功添加 |
备注 |
2.链接信息管理
链接信息管理用例描述能够描述系统中的链接信息管理功能,链接信息管理用例描述如表3-3所示。
表3-3 链接信息管理用例描述
用例标识 | 3.2 |
用例名称 | 编辑链接的相关信息 |
参与者 | 管理员和用户 |
前置条件 | 管理员需要输入正确的用户名和密码登录系统 |
后置条件 | 修改链接信息 |
用例概述 | 管理员修改链接信息 |
基本事件流 | 1.管理员输入正确的用户名和密码登录到系统当中 2.管理员在链接信息管理界面点击修改按钮提交修改的链接信息 3.链接信息修改成功 |
备选事件流 | 4a 输入的信息需要合法才能够成功修改 |
备注 |
3.分类信息管理
分类信息管理用例描述能够描述系统中的分类信息管理功能,分类信息管理用例描述如表3-4所示。
表3-4 分类信息管理用例描述
用例标识 | 3.3 |
用例名称 | 删除分类的相关信息 |
参与者 | 管理员 |
前置条件 | 管理员需要输入正确的用户名和密码登录系统 |
后置条件 | 删除分类信息 |
用例概述 | 管理员删除分类信息 |
基本事件流 | 1.管理员输入正确的用户名和密码登录到系统当中 2.管理员在分类信息管理界面点击删除按钮提交删除的分类信息 3.分类信息删除成功 |
备选事件流 | 4a 删除的分类信息需要跟其它表没有关联才能够删除 |
备注 |
4.标签信息管理
标签信息管理用例描述能够描述系统中的标签信息管理功能,标签信息管理用例描述如表3-5所示。
表3-5 标签信息管理用例描述
用例标识 | 3.4 |
用例名称 | 搜索标签的相关信息 |
参与者 | 管理员 |
前置条件 | 管理员需要输入正确的用户名和密码登录系统 |
后置条件 | 搜索标签信息 |
用例概述 | 管理员搜索标签信息 |
基本事件流 | 1.管理员输入正确的用户名和密码登录到系统当中 2.管理员在标签信息管理界面点击搜索按钮提交搜索的标签信息 3.标签信息搜索成功 |
备选事件流 | 4a 输入的标签名称需要跟数据库的信息相匹配才能够搜索成功 |
备注 |
5.登录
登录用例描述能够描述系统中的登录功能,登录用例描述如表3-6所示。
表3-6 登录用例描述
用例标识 | 3.5 |
用例名称 | 登录 |
参与者 | 用户、管理员 |
前置条件 | 用户和管理员需要输入正确的用户名和密码 |
后置条件 | 登录 |
用例概述 | 用户和管理员登录 |
基本事件流 | 1.用户和管理员进入到登录页面当中 2.管理员和用户输入用户名和密码登录到系统当中 |
备选事件流 | 4a 输入的信息需要和数据库信息相匹配才能够登录 |
备注 |
6.系统信息管理
系统信息管理用例描述能够描述系统中的系统信息管理功能,系统信息管理用例描述如表3-7所示。
表3-7 系统用例描述
用例标识 | 3.6 |
用例名称 | 编辑系统的相关信息 |
参与者 | 管理员 |
前置条件 | 管理员需要输入正确的用户名和密码登录系统 |
后置条件 | 修改系统信息 |
用例概述 | 管理员修改系统信息 |
基本事件流 | 1.管理员输入正确的用户名和密码登录到系统当中 2.管理员在系统信息管理界面点击添加按钮提交新添加的系统信息 3.系统信息添加成功 |
备选事件流 | 4a 输入的信息需要合法才能够成功添加 |
7.个人中心
个人中心用例描述能够描述系统中的个人中心功能,个人中心用例描述如表3-8所示。
表3-8 个人中心用例描述
用例标识 | 3.7 |
用例名称 | 个人中心 |
参与者 | 用户、管理员 |
前置条件 | 用户和管理员需要进入到个人中心页面中 |
后置条件 | 修改个人信息 |
用例概述 | 用户和管理员管理个人信息 |
基本事件流 | 1.用户和管理员进入到登录页面当中 2.用户和管理员输入用户名和密码登录到系统当中 3.在个人中心页面中修改自己个人信息 |
备选事件流 | 4a 只有输入的信息合法才能够成功修改 |
备注 |
8.收藏管理
收藏管理用例描述能够描述系统中的收藏管理功能,收藏管理用例描述如表3-9所示。
表3-9 收藏管理用例描述
用例标识 | 3.8 |
用例名称 | 收藏文章 |
参与者 | 用户 |
前置条件 | 用户需要进入到文章页面中 |
后置条件 | 收藏文章 |
用例概述 | 用户收藏文章 |
基本事件流 | 1.用户进入到登录页面当中 2.用户输入用户名和密码登录到系统当中 3.进入文章页面中收藏文章 |
备选事件流 | |
备注 |
9.评论管理
评论管理用例描述能够描述系统中的评论管理功能,评论管理用例描述如表3-10所示。
表3-10 评论管理用例描述
用例标识 | 3.9 |
用例名称 | 评论文章 |
参与者 | 用户 |
前置条件 | 用户需要进入到文章页面中 |
后置条件 | 评论文章 |
用例概述 | 用户评论文章 |
基本事件流 | 1.用户进入到登录页面当中 2.用户输入用户名和密码登录到系统当中 3.进入文章页面中评论文章 |
备选事件流 | |
备注 |
10.查看文章信息
查看文章信息用例描述能够描述系统中的查看文章信息功能,查看文章信息用例描述如表3-11所示。
表3-11 查看文章信息用例描述
用例标识 | 3.10 |
用例名称 | 查看文章信息 |
参与者 | 用户 |
前置条件 | 用户需要登录 |
后置条件 | 查看文章信息 |
用例概述 | 用户查看文章信息 |
基本事件流 | 1.用户进入到登录页面当中 2.用户输入用户名和密码登录到系统当中 3.进入文章列表界面 |
11.查看链接信息
查看链接信息用例描述能够描述系统中的查看链接信息功能,查看链接信息用例描述如表3-12所示。
表3-12 查看链接信息用例描述
用例标识 | 3.11 |
用例名称 | 查看链接信息 |
参与者 | 用户 |
前置条件 | 用户需要登录 |
后置条件 | 查看链接信息 |
用例概述 | 用户查看链接信息 |
基本事件流 | 1.用户进入到登录页面当中 2.用户输入用户名和密码登录到系统当中 3.进入链接列表界面 |
(1)操作界面需要简洁,由于本生活故事分享交流博客系统面向的用户不分年龄,所以在操作上需要以简单的原则,这样才能够有更多的用户访问本生活故事分享交流博客系统,页面加载速度快慢也能影响用户的体验感。本系统需要在用户数量达到顶峰的时候还能够流畅浏览[6]。
(2)系统在实现的时候需要注意设置导航栏,当用户点击导航栏的时候能够快速跳转。
(1)登录
登录功能可以验证用户输入的信息是否正确,如果输入的信息不正确,需要给与一定的提示。
提示密码不能为空 |
结束 |
开始 |
输入用户名密码 |
提示用户名不能为空 |
用户名是否为空 |
密码是否为空 |
判断是否正确 |
登录成功 |
提示用户名密码错误 |
否 |
是 |
是 |
否 |
是 |
否 |
图4-1 登录流程图
(2)重置密码
用户输入用户名和密码登录系统之后可以重置密码,在重置密码的时候用户不能够输入相同的密码且输入的密码要合法。
两次输入密码是否相等 |
重置密码成功 |
进入密码重置页面 |
点击用户名忘记密码 |
开始 |
结束 |
是 |
否 |
图4-2 重置密码流程图
(3)用户管理
管理员登录系统之后可以对用户信息进行管理,在用户管理界面中点击添加按钮可以添加用户的信息。
结束 |
提交修改信息 |
提交添加信息 |
添加用户信息 |
修改用户信息 |
删除用户信息 |
查看用户信息 |
进入用户管理功能 |
开始 |
图4-3 用户管理流程图
链接类型管理 |
分类管理 |
链接信息管理 |
文章信息管理 |
文章信息管理 |
用户管理 |
管理员 |
用户 |
查看文章信息 |
基于ssm的生活故事分享交流博客系统 |
评论管理 |
收藏管理 |
个人相册管理 |
链接信息管理 |
个人相册管理 |
图4-4 功能模块图
生活故事分享交流博客系统的实体可以使用数据模型表示,由于概念性模型没有固定的模型,因此程序开发人员可以根据按照自己的想法建立概念模型。概念模型还有另外一种表达方式,那就是数据库E-R图,E-R图又被成为数据模型。由于本生活故事分享交流博客系统带有大量的数据[7]。因此需要根据生活故事分享交流博客系统建立相应的数据模型。根据分析可以得出生活故事分享交流博客系统的E-R图如下:
用户 |
链接信息 |
链接分类 |
1 |
N |
N |
N |
N |
N |
包含 |
收藏 |
评论 |
个人相册 |
包含 |
1 |
N |
图4-5 数据库E-R图
(1)评论信息表
表4-1 评论信息表
列名 | 数据类型 | 长度 | 主外键 |
id | bigint | 20 | 是 |
addtime | timestamp | 0 | |
refid | bigint | 20 | 是 |
userid | bigint | 20 | 是 |
nickname | varchar | 200 | |
content | longtext | 0 | |
reply | longtext | 0 |
(2)个人相册信息表
表4-2 个人相册信息表
列名 | 数据类型 | 长度 | 主外键 |
id | bigint | 20 | 是 |
addtime | timestamp | 0 | |
xiangcemingcheng | varchar | 200 | |
xiangcefengmian | varchar | 200 | |
xiangceneirong | longtext | 0 | |
zhanghao | varchar | 200 | 是 |
xingming | varchar | 200 | |
chuangjianriqi | date | 0 |
(3)链接类型信息表
表4-3 链接类型信息表
列名 | 数据类型 | 长度 | 主外键 |
id | bigint | 20 | 是 |
addtime | timestamp | 0 | |
lianjieleixing | varchar | 200 |
(4)链接信息表
表4-4 丽娜姐信息表
列名 | 数据类型 | 长度 | 主外键 |
id | bigint | 20 | 是 |
addtime | timestamp | 0 | |
lianjiemingcheng | varchar | 200 | |
lianjiefengmian | varchar | 200 | |
lianjieleixing | varchar | 200 | 是 |
lianjiedizhi | varchar | 200 | |
lianjieneirong | longtext | 0 | |
zhanghao | varchar | 200 | |
xingming | varchar | 200 | |
faburiqi | date | 0 | |
thumbsupnum | int | 11 | |
crazilynum | int | 11 |
(5)收藏信息表
表4-5 收藏信息表
列名 | 数据类型 | 长度 | 主外键 |
id | bigint | 20 | 是 |
addtime | timestamp | 0 | |
userid | bigint | 20 | 是 |
refid | bigint | 20 | 是 |
tablename | varchar | 200 | |
name | varchar | 200 | |
picture | varchar | 200 | |
type | varchar | 200 | |
inteltype | varchar | 200 |
(6)用户公告信息表
表4-6 用户信息表
列名 | 数据类型 | 长度 | 主外键 |
id | bigint | 20 | |
addtime | timestamp | 0 | |
zhanghao | varchar | 200 | |
mima | varchar | 200 | |
xingming | varchar | 200 | |
xingbie | varchar | 200 | |
youxiang | varchar | 200 | |
shoujihaoma | varchar | 200 | |
xiangpian | varchar | 200 |
管理员想要对分类的信息进行管理首先得进行登录,登录完成之后才可以进入到分类管理的功能模块当中。在分类管理功能模块中如果想要添加分类的信息,则需要管理员在分类管理的界面中点击添加按钮,之后会跳转到添加分类的界面当中,在添加分类的界面中输入添加分类的信息,输入的时候需要注意字符的合法性,如果输入不法或者敏感字符则不能够成功添加分类的信息[8]。
图5-1 分类管理界面
管理员可以在搜索输入框中输入文章名称查找文章的信息,输入的文章名称需要注意其字符的合法性和长度的关系,如果管理员输入的文章名称跟数据库的记录对不上的话则不能够成功查找出对应的文章信息,服务端需要在前端界面中进行提示[9]。
图5-2 文章管理界面
如果管理员想要修改个人相册的信息则需要点击修改按钮进入到个人相册修改界面当中,在输入框中输入修改后的个人相册信息,如果输入个人相册的修改信息跟数据库记录相冲突,则不能够成功修改。在修改输入框中需要注意必要选项必填和输入的信息不能跟数据库原有的记录相冲突[10]。
图5-3 个人相册管理界面
在链接管理功能模块中管理员可以对链接的信息进行管理,对链接管理的信息需要同步更新到数据库记录当中。管理员如果想要删除链接的信息,需要进入到链接管理的功能模块界面中[11],点击删除按钮后如果链接的信息跟其它表有关联的关系则不能够成功地删除,管理员需要先删除其它表的记录才能够删除链接信息。
图5-4 链接管理界面
在文章展示界面中前端界面能够以表单列表的形式对文章的信息进行展示,用户可以查看文章的信息,如果对某个文章感兴趣的话可以点击文章图片从而进入到文章的详细信息界面当中,当用户点击文章图片的时候客户端需要发送请求到服务端中,服务端需要利用数据库管理器从数据库中获得文章的详细信息传递到服务端中,服务端把数据传送到客户端中,客户端需要在前端界面中展示数据,利用页面的正则表达式对文章信息进行解析并通过form表单展示文章信息[12]。
图5-5 文章展示界面
在文章详细信息界面中能够展示文章的详细信息,当用户在文章列表信息中进入到文章详细信息界面的时候,需要传递相应的文章信息编号到服务端中,服务端利用接口获得到文章信息编号,在业务逻辑处理中利用数据库SQL语句操作文章表获得文章的详细信息,获得的文章信息放入到data对象中传递到客户端,前端界面利用函数的方式解析文章的信息并展示在前端界面中[13]。
图5-6 文章详细信息界面
在链接展示界面中前端界面能够以表单列表的形式对链接的信息进行展示,用户可以查看链接的信息,如果对某个链接感兴趣的话可以点击链接图片从而进入到链接的详细信息界面当中[14],当用户点击链接图片的时候客户端需要发送请求到服务端中,服务端需要利用数据库管理器从数据库中获得链接的详细信息传递到服务端中,服务端把数据传送到客户端中,客户端需要在前端界面中展示数据,利用页面的正则表达式对链接信息进行解析并通过form表单展示链接信息。
图5-7 链接展示界面
在链接详细信息界面中能够展示链接的详细信息,当用户在链接列表信息中进入到链接详细信息界面的时候,需要传递相应的链接信息编号到服务端中,服务端利用接口获得到链接信息编号,在业务逻辑处理中利用数据库SQL语句操作链接表获得链接的详细信息,获得的链接信息放入到data对象中传递到客户端,前端界面利用函数的方式解析链接的信息并展示在前端界面中[15]。
图5-8 链接详细信息界面
一个流程完整的软件开发流程需要软件开发者对软件进行功能和需求分析的测试,这能够检测该软件是否能够满足要求和尽快地查找出软件可能存在的bug,这就是软件测试的目标。
黑盒测试能够使得软件测试人员即使不了解软件具体业务逻辑的情况下,使用大量的测试用例能够测试软件的输入和输出,通过这种方法可以保证系统的可靠性。
(1)用户管理
表6-1 用户管理用例表
功能描述:用户管理功能 用例目的:测试管理员是否能够正常管理用户功能 前提条件:管理员成功登录生活故事分享交流博客系统 | ||
输入或动作 | 输出或相应 | 实际情况 |
点击添加按钮 | 新添加了用户的信息到数据库记录中 | 如果输入的用户信息字符不合法或者数据库记录相冲突的情况下则不能够正常添加,如果添加的用户信息能够正常添加,则对应的数据库记录也需要更新 |
点击修改按钮 | 修改用户信息后把信息保存到数据库记录中 | 如果在修改输入框输入的用户信息不合法,则不能够成功修改用户的信息,修改完的信息需要保存到数据库记录中 |
点击删除按钮 | 删除用户的信息需要同步更新数据库记录 | 如果被删除的用户信息跟数据库记录的其它表有外键或者索引关系的时候,则不能够成功删除,需要先删除其它表的数据库记录才能够正常删除 |
在搜索输入框中输入内容 | 在搜索输入框中输入内容搜索用户的信息 | 如果管理员在输入框中输入的用户名称在数据库记录中不相匹配的情况下则不能够搜索出用户的信息 |
(2)文章管理
表6-2 文章管理用例表
功能描述:文章管理功能 用例目的:测试管理员是否能够正常管理文章功能 前提条件:管理员成功登录生活故事分享交流博客系统 | ||
输入或动作 | 输出或相应 | 实际情况 |
点击添加按钮 | 新添加了文章的信息到数据库记录中 | 如果输入的文章信息字符不合法或者数据库记录相冲突的情况下则不能够正常添加,如果添加的文章信息能够正常添加,则对应的数据库记录也需要更新 |
点击修改按钮 | 修改文章信息后把信息保存到数据库记录中 | 如果在修改输入框输入的文章信息不合法,则不能够成功修改文章的信息,修改完的信息需要保存到数据库记录中 |
点击删除按钮 | 删除文章的信息需要同步更新数据库记录 | 如果被删除的文章信息跟数据库记录的其它表有外键或者索引关系的时候,则不能够成功删除,需要先删除其它表的数据库记录才能够正常删除 |
在搜索输入框中输入内容 | 在搜索输入框中输入内容搜索文章的信息 | 如果管理员在输入框中输入的文章名称在数据库记录中不相匹配的情况下则不能够搜索出文章的信息 |
(3)链接管理
表6-3 链接管理用例表
功能描述:链接管理功能 用例目的:测试管理员是否能够正常管理链接功能 前提条件:管理员成功登录生活故事分享交流博客系统 | ||
输入或动作 | 输出或相应 | 实际情况 |
点击添加按钮 | 新添加了链接的信息到数据库记录中 | 如果输入的链接信息字符不合法或者数据库记录相冲突的情况下则不能够正常添加,如果添加的链接信息能够正常添加,则对应的数据库记录也需要更新 |
点击修改按钮 | 修改链接信息后把信息保存到数据库记录中 | 如果在修改输入框输入的链接信息不合法,则不能够成功修改链接的信息,修改完的信息需要保存到数据库记录中 |
点击删除按钮 | 删除链接的信息需要同步更新数据库记录 | 如果被删除的链接信息跟数据库记录的其它表有外键或者索引关系的时候,则不能够成功删除,需要先删除其它表的数据库记录才能够正常删除 |
在搜索输入框中输入内容 | 在搜索输入框中输入内容搜索链接的信息 | 如果管理员在输入框中输入的链接名称在数据库记录中不相匹配的情况下则不能够搜索出链接的信息 |
对系统进行性能测试一般需要等到系统功能测试完之后才可以进行,通过模拟不同的情况,如CPU占有率和内存平均占用率等进行测试。
表6-4 性能测试表
测试编号 | 测试内容 | 数据量 | 处理所用时间 | CPU平均占有率 | 内存平均占有率 |
1 | 用户浏览系统的信息 | 一个用户 | 1.10 | 26.84 | 29.06 |
2 | 同个用户再次浏览系统的信息 | 一个用户 | 0.03 | 26.84 | 29.06 |
3 | 多个用户再次同时浏览系统的信息 | 2000个用户 | 0.20 | 41.03 | 38.88 |
本文不仅对生活故事分享交流博客系统的需求分析和系统设计进行了分析,还深入生活故事分享交流博客系统所涉及到的技术,本文研究的主要内容包括:
(1)研究并介绍了生活故事分享交流博客系统的背景、国内外现状和发展的一个趋势。
(2)对生活故事分享交流博客系统的子系统进行了分析。
(3)合理分析并实现生活故事分享交流博客系统需要涉及到的数据库表。
(4)分析并实现了生活故事分享交流博客系统的业务逻辑。
(5)研究并分析使用开源框架实现生活故事分享交流博客系统。
(5)编写测试用例测试系统是否能够正常运行。
完整地介绍了生活故事分享交流博客系统的开发流程。本文先安装了必备软件,之后对开源项目进行搭建,编写服务端和客户端的代码,代码方面基本实现了生活故事分享交流博客系统的基本功能,最后是编写测试用例对系统进行测试,完整重现了生活故事分享交流博客系统从无到有的一个过程。对于用户来说,在一定程度上节约了不少的时间。对于管理员来说提高了工作效率。
本文涉及的生活故事分享交流博客系统不仅成本低下,而且有着非常不错的实用性,通过运用开源框架等技术,可以使得本系统的实用性进一步加强,不过系统还有不少不足,主要体现在以下几个方面:
(1)本生活故事分享交流博客系统采用的是普通登录方式,后续可以采用人脸识别方式实现登录。
(2)生活故事分享交流博客系统可以利用redis数据库存储系统中的信息,从而进一步加强页面的访问速度。对生活故事分享交流博客系统高并发的问题进一步处理。
致 谢
时间过得很快,大学阶段已经结束了,我也即将离开学校。回顾往昔,大学的很多记忆从脑海中闪过,奋斗和喜悦在我的脑海中闪过,内心失落之后又充满希望,自己也在校园里学到了很多的东西充实了自己。
在几年前之前,我收到了人生很重要的一张通知书,它使我明白了一个道理,失败不可怕,可怕的是重头再来。在考取大学的过程当中我收获了很多,真心感谢这段时光和经历。
首先,我非常感谢我的父母,我在求学的路上他们给了我很多的支持,在我生活的各方面给予了我指导。在大学的这段时光里,我非常感谢我的指导老师对我的关心和安慰,指导老师在系统编写设计方面给了我许多的指导。在此期间,我遇到了不少的问题,指导老师会耐心地给我讲解知识,耐心地给予我解决的方案,从论文的排版,再到经过自己努力和指导老师对我的帮助,最终才能够将系统和论文完成。同时还要感谢学院老师的幸苦工作。
大学期间最让我怀念的便是班级的小伙伴们,在这里由衷地感谢着大家,有了你们的帮助使得我在学习上走了很少的弯路。学习的过程当中虽然艰辛但是收获了很多。感谢各位,你们是我一路走来的朋友。我要感谢我的大学,是您为我提供了良好的学习环境,让我能够更好地学习,