随着科学技术的发展和人们生活质量的改善,人们对于服务的要求也会越来越高。为了能够提高管理员管理的效率和用户的体验感,现今的个人博客必须摆脱繁杂的人工操作管理的方式。要跟随社会智能化的发展,使得智能处理成为个人博客管理的重要组成部分,给用户提供了更优质的服务。
本个人博客管理系统采用编程语言Java,开源框架SSM实现系统的架构,系统的数据采用数据库MySQL进行存储,Tomcat作为服务器处理用户从前端发送的请求,基本涵盖了个人博客管理的基本需求。
关键词:Java;SSM;MySQL
With the development of science and technology and the improvement of people's quality of life, people's requirements for services will be higher and higher. In order to improve the efficiency of administrator management and user experience, today's personal blog must get rid of the complicated manual operation management. We should follow the development of social intelligence, make intelligent processing an important part of personal blog management, and provide users with better services.
The personal blog management system adopts the programming language Java and the open source framework SSM to realize the system architecture. The data of the system is stored in the database mysql. Tomcat is used as the server to process the requests sent by users from the front end, which basically covers the basic needs of personal blog management.
key word:Java;SSM;MySQL
目 录
第一章 绪论..................................................................................... 1
第二章 系统技术............................................................................ 2
第三章 需求分析............................................................................ 3
第四章 系统功能设计.................................................................. 13
4.2.1 概念模型设计.................................................................................... 17
4.2.2 逻辑结构设计.................................................................................... 18
第五章 系统实现.......................................................................... 21
第六章 系统测试.......................................................................... 28
6.2.2 用户管理测试.................................................................................... 29
6.2.3 日志管理测试.................................................................................... 29
第七章 总结与展望...................................................................... 31
参考文献......................................................................................... 32
致 谢............................................................................................. 33
当今世界处于高速发展的阶段,信息生产力是重要的社会生产力之一。微信和支付宝等的应用及普及,这些支付方式是社会信息化的产物,方便了企业和用户,这能够节省管理员和用户的时间[1],提高事情处理的效率。由此可知信息化是社会发展的必然方向,信息化能够改变企业的做事方式。
现今社会发展迅速,过去的个人博客管理模式已经不能够满足用户的要求,在当今互联网时代,便捷的个人博客管理系统成为人们的首要选择。传统对用户博客进行管理采用的是人工处理的方式,但是这样做的话不仅出错率高并且可参考的资料也不多,为了能够高效且顺畅地管理用户博客,设置质量更好的个人博客管理系统势在必行[2]。
21世纪属于大数据时代,由于在信息管理方面数据量不少,因此管理员需要处理大量数据。由于计算机具有自动处理数据的优势,因此很多用户选择使用计算机处理大量的数据,这样能够提高个人博客管理系统的效率和安全性,处理越复杂的数据越能够体现出使用计算机管理的好处。
在刚开始的时候,管理员处理数据的方式采用的是人工的方式进行管理,但是由于数据量巨大并且继续采用人工的方式进行管理的话,则会导致出现不少问题,当需要管理的数据量躲起来的时候,数据容易丢失并且查找的时候也不容易找到,这样会导致管理员的工作效率低下[3]。
针对本文的个人博客管理系统安排论文的章节如下:
第一章是引言。本章主要介绍了课题研究背景与意义、课题研究现状和论文结构。
第二章是系统开发环境及技术。本章介绍了个人博客管理系统开发环境和所涉及到的技术。
第三章是需求分析。本章介绍了个人博客管理系统的功能需求和非功能需求,绘制出系统功能模块图。
第四章是系统总体设计。对系统功能模块进行划分和数据库设计。
第五章是系统实现。本章阐述了个人博客管理系统功能模块的实现功能。
第六章是系统测试。本章阐述了使用黑盒测试对系统进行测试[4]。
个人博客管理系统使用MVC模式不仅可以通过动态地优化代码,还可以减少重复编写数据库SQL语句,通过调用通用的方法对数据库进行操作。MVC可以通过简化个人博客管理系统的代码量,从而实现优化代码。
MVC三大模型分别是模型、视图和控制器。在MVC设计模式当中模型能够和系统的实体实现信息的交换,控制器处理来自用户从浏览器端发送的请求,视图层能够展示个人博客管理系统界面到浏览器端。在MVC模式当中模型数据的变化可以呈现于视图层当中。视图层与模型层当中并不能够直接联系,当模型数据发生变化的时候,视图层可以将变化的模型数据呈现在浏览器端。
MySQL作为一种主流的关系型数据库,属于Oracle数据库中的一种产品。MySQL意为存储和管理的数据仓库,可以看成是现实中的文件资料柜。用户使用此数据库可以把数据存储到数据库中。MySQL使用的语言版本通过被用做建表语言。
由于MySQL安装成本低和运行速度快等原因,很多中小型企业在使用数据库的时候通过使用的是MySQL数据库。MySQL数据库性能优秀,并且由于其源码开源免费的特点使得企业的开发成本降低不少。
如果信息系统开发方法采用的是模型-视图-控制器,那么如果开发方法能够从多个方法证实多个层次获得模型是十分重要的,设计者必须区分出系统抽象和具体的差别。模型-视图-控制器设计的目的不是指导设计者怎么设计模型,目的是通过模型-视图-控制器能够引领软件开发者对模型的合理配置。模型-视图-控制器的目的是帮助软件开发者尽可能降低软件编写的复杂度,设计理念为通过使用已存在的组件来简化软件开发者开发软件。在业务模型中,数据模型同样也非常的重要,数据模型能够保存系统实体的相关信息。在控制层当中能够处理用户在前端页面中传递过来的用户请求。
现在很多个人博客管理系统还存在着诸多的问题,包括操作不便、功能不够完善等问题,有的管理方式采用的还是人工的方式。随着社会的发展,需要一个功能更加完善的个人博客管理系统。
个人博客管理系统能够处理面向用户管理个人博客的大多数事务,它包括了服务管理等工作,该系统采用了MVC设计模式和使用了数据库MySQL从而开发出个人博客管理系统,目的是方便用户和提高管理员的效率。
个人博客管理系统的实现需要结合实际,确定用户的需求,通过需求分析从而制定系统的目标,通过分析确定出个人博客管理系统的体系结构,所以在实现个人博客管理系统的时候要考虑全面:
(1)每个子系统之间要相对独立和稳定,这样有利于子系统的开发和维护。
(2)充分考虑管理的业务分工,尽可能地使功能子系统在一个职能的管理范围之内,以便于子系统的管理。
(3)用户在个人博客管理系统上操作不能够过于复杂,不同的用户有着不同的操作权限,需要在用户表中加以区分。
系统性能方面要求用户界面需要设置得较为友好,用户可以简洁易学地使用系统。系统在开发的时候要注意开发的成本,提高效率。
通过对系统的目标进行分析之后,现从技术和经济的角度对个人博客管理系统分析可行性。
(1)技术上可行。在开发个人博客管理系统的时候,对软硬件的要求比较低,在硬件方面只需要win10电脑即可,对硬盘没什么要求,这些硬件价格较为便宜。在软件方面,只需要安装数据库和编译环境就能够运行系统,这些软件在很多系统中都有应用过,因此开发成本较低。
(2)经济上可行。经济可行性要求个人博客管理系统带来的收益能够多余软件开发的成本。通过该系统,管理员可以大大降低手工操作并且提高管理效率。该系统使用的框架为开源框架,使用开源框架可以降低开发成本。本个人博客管理系统扩展性强和易于维护,因此后期维护费用大大降低[5]。
(3)操作上可行。个人博客管理系统开发出来的目的是为了能够给用户方便操作,系统在设计和实现的时候需要注意用户在操作上是否可行。本次设计的个人博客管理系统没有采用过于专业的设计,使用的按钮和界面是用户较为熟悉的。

图3.1 用户用例图

图3.2 管理员用例图
用例的简要描述如表3.1所示。
表3.1 用例描述
| 用例标识(UC) | 用例名称 | 摘要描述 |
| 1 | 注册登录 | 用户和管理员通过登录功能才得以使用系统的功能 |
| 2 | 查看日志信息 | 用户登录系统之后可以查看日志信息 |
| 3 | 收藏个人相册 | 用户登录系统之后可以收藏个人相册 |
| 4 | 评论个人相册 | 用户登录系统之后可以评论个人相册 |
| 5 | 个人相册管理 | 用户登录系统之后可以管理个人相册信息 |
| 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.登录签到信息删除成功 |
| 备选事件流 | 4a 删除的登录签到信息需要跟其它表没有关联才能够删除 |
| 备注 |
|
9.积分充值信息管理
积分充值信息管理用例描述能够描述系统中的积分充值信息管理功能,积分充值信息管理用例描述如表3.10所示。
表3.10 积分充值信息管理用例描述
| 用例标识 | 3.9 |
| 用例名称 | 搜索积分充值的相关信息 |
| 参与者 | 管理员 |
| 前置条件 | 管理员需要输入正确的用户名和密码登录系统 |
| 后置条件 | 搜索积分充值信息 |
| 用例概述 | 管理员搜索积分充值信息 |
| 基本事件流 | 1.管理员输入正确的用户名和密码登录到系统当中 2.管理员在积分充值信息管理界面点击搜索按钮提交搜索的积分充值信息 3.积分充值信息搜索成功 |
| 备选事件流 | 4a 输入的积分充值名称需要跟数据库的信息相匹配才能够搜索成功 |
| 备注 |
|
10.个人相册管理
个人相册管理用例描述能够描述系统中的个人相册管理功能,个人相册管理用例描述如表3.11所示。
表3.11 个人相册管理用例描述
| 用例标识 | 3.10 |
| 用例名称 | 个人相册 |
| 参与者 | 用户 |
| 前置条件 | 用户需要进入到个人相册页面中 |
| 后置条件 | 管理个人相册信息 |
| 用例概述 | 用户管理个人相册信息 |
| 基本事件流 | 1.用户进入到登录页面当中 2.用户输入用户名和密码登录到系统当中 3.进入个人相册页面中管理信息 |
| 备选事件流 | 4a 只有点击相应的按钮才能够管理 |
| 备注 |
|
11.查看日志信息
查看日志信息用例描述能够描述系统中的查看日志信息功能,查看日志信息用例描述如表3.12所示。
表3.12 查看日志信息用例描述
| 用例标识 | 3.11 |
| 用例名称 | 查看日志信息 |
| 参与者 | 用户 |
| 前置条件 | 用户需要登录 |
| 后置条件 | 查看日志信息 |
| 用例概述 | 用户查看日志信息 |
| 基本事件流 | 1.用户进入到登录页面当中 2.用户输入用户名和密码登录到系统当中 3.进入日志列表界面 |
12.收藏相册
收藏相册用例描述能够描述系统中的收藏相册功能,收藏相册用例描述如表3.13所示。
表3.13 收藏相册用例描述
| 用例标识 | 3.12 |
| 用例名称 | 收藏相册 |
| 参与者 | 用户 |
| 前置条件 | 用户需要进入到相册详情页面中 |
| 后置条件 | 收藏相册 |
| 用例概述 | 用户收藏相册 |
| 基本事件流 | 1.用户进入到登录页面当中 2.用户输入用户名和密码登录到系统当中 3.进入相册详细页面中 |
13.查看个人相册信息
查看个人相册信息用例描述能够描述系统中的查看个人相册信息功能,查看个人相册信息用例描述如表3.14所示。
表3.14 查看个人相册信息用例描述
| 用例标识 | 3.13 |
| 用例名称 | 查看个人相册信息 |
| 参与者 | 用户 |
| 前置条件 | 用户需要登录 |
| 后置条件 | 查看个人相册信息 |
| 用例概述 | 用户查看个人相册信息 |
| 基本事件流 | 1.用户进入到登录页面当中 2.用户输入用户名和密码登录到系统当中 3.进入个人相册列表界面 |
14.评论相册
评论相册用例描述能够描述系统中的评论相册功能,评论相册用例描述如表3.15所示。
表3.15 评论相册用例描述
| 用例标识 | 3.14 |
| 用例名称 | 评论相册 |
| 参与者 | 用户 |
| 前置条件 | 用户需要进入到相册详情页面中 |
| 后置条件 | 评论相册 |
| 用例概述 | 用户评论相册 |
| 基本事件流 | 1.用户进入到登录页面当中 2.用户输入用户名和密码登录到系统当中 3.进入相册详细页面中 |
(1)当用户通过客户端访问系统的时候,需要检测个人博客管理系统的性能是否优秀,可以通过设置多个服务器,从而提高个人博客管理系统的性能。MySQL具有缓存的功能,可以通过缓存存储个人博客管理系统的数据,调节数据库服务器的参数从而提高系统的性能。如果使用了数据库的缓存功能,那么每次用户访问相同内容的时候,可以直接读取缓存中的内容,这样有利于提高数据访问的速度。
(2)个人博客管理系统在运行的时候需要具有一定的可靠性,需要能够承载着一定的压力。如果代码出现了小的错误的时候,个人博客管理系统的运行需要基本不受影响。如果因为意外错误出现了系统停机的情况下,这需要要求个人博客管理系统的基本功能还能够正常使用。
(3)个人博客管理系统在设计实现的时候需要注意其维护性,系统需要采用多层架构进行实现,程序开发者在分工的时候要注意其明确性,这样有利于后期的维护。
(4)本个人博客管理系统提供了灵活的查询模块,管理员输入信息查询的时候为组合查询,能够提高查询效率[6]。
通过对系统可行性分析和需求分析之后,最后确定使用MVC模式对系统进行了设计。系统功能设计的主要职责为把软件需求转化为软件的体系结构,把系统分为多个功能模块,并确定各模块之间不同的调用关系。最后对系统各个模块进行详细的设计。
本个人博客管理系统划分为三个模块,分别是客户端、服务端和数据库服务器,客户端在设计的时候使用到了开源框架能够方便用户使用系统功能。服务端使用到的是HTTP协议,使用了统一的协议能够减少人员差异带来的问题,更加规范了开发的流程和减少开发难度,这能提高服务端模块的复用性。
本系统设计模式采用的是MVC模式,用户的请求会通过http传递给控制层中进行处理,用户的请求会被传递到控制层中进行处理,数据模型会把获得的数据结合视图将结果进行显示,并且管理数据的持久化以此来操作数据。交互的界面也算视图层,能够将结果显示给用户。
(1)登录
管理员登录系统后可以查看并管理系统各项信息。
|
结束 |
|
登录成功 |
|
数据是否正确 |
|
查询数据库 |
|
接受登录信息 |
|
登录失败 |
|
开始 |
|
是 |
|
否 |
图4.1 登录流程图
(2)注册
用户登录系统之前需要注册,如果输入的信息跟数据库记录相冲突则不能够成功注册。
|
结束 |
|
注册成功 |
|
用户是否存在 |
|
查询数据库 |
|
数据是否为空 |
|
开始 |
|
接受注册信息 |
|
注册失败 |
|
是 |
|
是 |
|
否 |
|
否 |
图4.2 注册流程图
(3)用户管理
管理员登录完了系统之后可以对系统的信息进行管理。
|
开始 |
|
删除用户 |
|
删除 |
|
输入修改的信息 |
|
是否选择用户 |
|
修改 |
|
结束 |
|
选择用户 |
|
进入用户管理界面 |
|
选择要进行的操作 |
|
增加 |
|
输入要添加的用户信息 |
|
是 |
|
是 |
|
否 |
|
是 |
|
否 |
|
是 |
|
否 |
图4.3 用户管理流程图
|
积分充值管理 |
|
登录签到管理 |
|
标签分类管理 |
|
个人相册管理 |
|
个人中心 |
|
用户管理 |
|
管理员 |
|
用户 |
|
查看日志信息 |
|
个人博客管理系统 |
|
积分充值管理 |
|
登录签到管理 |
|
个人相册管理 |
|
日志信息管理 |
|
系统管理 |
图4.4 功能模块图
数据库是一个通过存储组织数据的文件仓库,它可以使用相关的api接口对数据进行管理。在很早之前的时候可以把数据存储到文件当中,但是通过这种做法存储和读取数据速度不快,所以系统在实现的时候需要利用MySQL存储和读取数据。MySQL是一款免费开源的关系型数据库,关系型数据库得建立在关系模型之上,通过基础代数等概念处理数据库中的数据[7]。
本个人博客管理系统的功能设计目标是根据用户的需求设置的,系统概念模型的搭建实际是在搭建目标结构,设置数据库需要包含这一步骤。本个人博客管理系统有着不少的数据,数据模型可以表示个人博客管理系统中的实体,还可以使用E-R图进行表示。
(1)在处理数据的时候能够满足用户的需求,能够更加有效地呈现和反馈现实世界。
(2)用户在操作的时候要容易上手,数据库要设计得较为复杂但易懂。
(3)后续数据需求发生改变的时候,数据库和模型结构能够便捷地修改[8]。
|
用户 |
|
留言板 |
|
个人相册 |
|
商品分类 |
|
N |
|
1 |
|
1 |
|
N |
|
N |
|
N |
|
N |
|
N |
|
包含 |
|
包含 |
|
收藏 |
|
评论 |
|
包含 |
|
积分充值 |
|
1 |
|
N |
图4.5 数据库E-R图
利用MySQL数据库创建系统设计的表,数据库表能够用来保存系统需要的数据。
(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 |
|
| xiangceleixing | varchar | 200 |
|
| shangchuanshijian | date | 0 |
|
| xiangcemiaoshu | longtext | 0 |
|
| fengmian | varchar | 200 |
|
| bokezhanghao | varchar | 200 | 是 |
| bokenicheng | varchar | 200 |
|
| sfsh | varchar | 200 |
|
| shhf | longtext | 0 |
|
| thumbsupnum | int | 11 |
|
| crazilynum | int | 11 |
|
| clicktime | datetime | 0 |
|
| clicknum | int | 11 |
|
(3)积分充值信息表
表4.3 积分充值信息表
| 列名 | 数据类型 | 长度 | 主外键 |
| id | bigint | 20 | 是 |
| addtime | timestamp | 0 |
|
| bokezhanghao | varchar | 200 | 是 |
| bokenicheng | varchar | 200 |
|
| jifen | int | 11 |
|
| chongzhishijian | date | 0 |
|
| chongzhimiaoshu | longtext | 0 |
|
(4)留言板信息表
表4.4 留言板信息表
| 列名 | 数据类型 | 长度 | 主外键 |
| id | bigint | 20 | 是 |
| addtime | timestamp | 0 |
|
| userid | bigint | 20 | 是 |
| username | varchar | 200 |
|
| content | longtext | 0 |
|
| cpicture | varchar | 200 |
|
| reply | longtext | 0 |
|
| rpicture | varchar | 200 |
|
(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 |
|
| bokezhanghao | varchar | 200 |
|
| mima | varchar | 200 |
|
| bokenicheng | varchar | 200 |
|
| xingbie | varchar | 200 |
|
| shouji | varchar | 200 |
|
| youxiang | varchar | 200 |
|
| jifen | int | 11 |
|
| touxiang | varchar | 200 |
|
前台用户需要注册的时候需要输入必要的用户信息,注册成功后才能够登录,注册后的信息存储到数据库记录中,如果需要登录的话则需要输入注册的信息,输入正确才可以登录系统。在后端处理逻辑代码中需要定义login方法,通过用户名称找出用户的信息,通过数据库SQL语句可以查找出用户的信息记录,如果输入的用户名称跟数据库记录不相匹配则需要在前台界面中提示用户。用户还可以选择重置密码,调用session包含的方法invalidate注销用户。

图5.1 登录界面
在用户管理界面中显示信息的时候可以使用页面的形式进行展示,页面数据较多的话可以转到下一页中,使用页面工具类实现上一页和下一页的结果。管理员搜索用户信息的时候在输入框中输入的内容需要传递到后端逻辑代码设计的query函数,如果能够查询得到用户的信息,则需要把信息利用put函数放进对象中传递到前端界面中。修改按钮绑定的时间需要跟后端逻辑代码设置的update函数相对应。当管理员点击了删除按钮的时候需要在后端代码设置delete函数,利用SQL语句对用户的信息进行删除设置。

图5.2 用户管理界面
管理员管理日志的信息时候需要定义后端接口从而实现对图书的增删改查。前端图书的展示需要使用list函数,前后端的数据通过request对象进行传递。日志信息封装在page对象中,前端界面利用正则表达式对page进行解析。日志的信息需要保存在日志实体类中,日志实体类的信息跟数据库中日志表的信息一一对应。当管理员想要添加图书信息的时候需要登录后台系统点击添加按钮,在添加按钮需要绑定按钮点击事件,后端逻辑处理代码绑定相关的接口对用户请求进行处理。

图5.3 日志管理界面
在个人相册管理界面中显示信息的时候可以使用页面的形式进行展示,页面数据较多的话可以转到下一页中,使用页面工具类实现上一页和下一页的结果。管理员搜索个人相册信息的时候在输入框中输入的内容需要传递到后端逻辑代码设计的query函数,如果能够查询得到个人相册的信息,则需要把信息利用put函数放进对象中传递到前端界面中。修改按钮绑定的时间需要跟后端逻辑代码设置的update函数相对应。当管理员点击了删除按钮的时候需要在后端代码设置delete函数,利用SQL语句对个人相册的信息进行删除设置。

图5.4 个人相册管理界面
管理员管理积分充值的信息时候需要定义后端接口从而实现对图书的增删改查。前端图书的展示需要使用list函数,前后端的数据通过request对象进行传递。积分充值信息封装在page对象中,前端界面利用正则表达式对page进行解析。积分充值的信息需要保存在积分充值实体类中,积分充值实体类的信息跟数据库中积分充值表的信息一一对应。当管理员想要添加图书信息的时候需要登录后台系统点击添加按钮,在添加按钮需要绑定按钮点击事件,后端逻辑处理代码绑定相关的接口对用户请求进行处理。

图5.5 积分充值管理界面
在个人相册展示界面中可以展示出个人相册的信息,用户登录系统之后可以点击查看,当用户点击个人相册信息的时候可以实现跳转,在前端界面中设置对应的函数处理用户传递过来的请求,前端界面可以解析服务端传送的数据并展示在界面当中。在个人相册信息需要绑定对应的点击事件,当用户点击的时候才可以实现跳转到对应的界面当中。

图5.6 个人相册展示界面
在个人相册详细信息界面中可以展示个人相册的详细信息,用户通过进入个人相册展示的页面点击个人相册信息可以进入到个人相册的详细信息界面当中。通过个人相册展示界面进入到个人相册详细信息界面需要传递个人相册编号,后端业务逻辑代码通过SQL语句获得个人相册的详细信息从而展示在前端页面当中。

图5.7 个人相册详细信息界面
在日志展示界面中可以展示出日志的信息,用户登录系统之后可以点击查看,当用户点击日志信息的时候可以实现跳转,在前端界面中设置对应的函数处理用户传递过来的请求,前端界面可以解析服务端传送的数据并展示在界面当中。在日志信息需要绑定对应的点击事件,当用户点击的时候才可以实现跳转到对应的界面当中。

图5.8 日志展示界面
在日志详细信息界面中可以展示日志的详细信息,用户通过进入日志展示的页面点击日志信息可以进入到日志的详细信息界面当中。通过日志展示界面进入到日志详细信息界面需要传递日志编号,后端业务逻辑代码通过SQL语句获得日志的详细信息从而展示在前端页面当中。

图5.9 日志详细信息界面
在完整的软件开发过程中需要包括软件测试,软件测试能够用来确认系统功能是否符合要求和性能要求方面是否合理。软件测试能够进一步地保证软件质量,对软件的需求分析和代码的最终复审。软件测试的主要目的为完善优化系统。
软件测试的目的包括:
第一是确保了软件的质量,这能够确定个人博客管理系统是有按照需求分析来实现,另一方面也可以检测软件开发过程中是否有漏洞,模块功能是否能够正常使用和实现。
第二是提供的信息要及时,例如为技术人员提供的反馈信息,为风险测评所需要的信息。
第三是测试不仅可以检测最后的个人博客管理系统是否符合基本要求之外,还可以检测个人博客管理系统在整个设计的过程是否严谨。如果在测试的时候发现了问题,那么就要尽快解决[9]。
测试人员在软件开发的时候具有任务:
(1)寻找系统中存在的缺陷并改正。
(2)在功能测试的时候寻找系统的错误。
(3)通过软件的压力测试从而能够判断出软件是否拥有良好的可用性。
(4)检测系统的基本功能是否能够达到要求[10]。
表6.1 登录用例表
| 模块测试 | 测试用例 | 预期结果 | 实际结果 | 是否通过 |
| 登录 | 账号:abo 密码:abo | 能够使用系统功能 | 能够使用系统功能 | 通过 |
| 登录 | 账号:null 密码:abo | 不能够使用系统功能,系统提示请输入账号 | 不能够使用系统功能,系统提示请输入账号 | 通过 |
| 登录 | 账号:abo 密码:null | 不能够使用系统功能,系统提示请输入密码 | 不能够使用系统功能,系统提示请输入密码 | 通过 |
| 登录 | 账号:null 密码:null | 不能够使用系统功能,系统提示请输入账号 | 不能够使用系统功能,系统提示请输入账号 | 通过 |
表6.2 用户管理用例表
| 模块测试 | 测试用例 | 预期结果 | 实际结果 | 是否通过 |
| 用户管理 | 管理员想要添加用户的信息输入用户必填的信息 | 如果输入的信息合法并且跟数据库记录不相冲突,则能够添加初稿 | 如果输入的信息合法并且跟数据库记录不相冲突,则能够添加初稿 | 通过 |
| 用户管理 | 管理员想要修改用户的信息点击修改按钮 | 如果在输入框中输入修改的信息不合法或输入的信息跟数据库记录相冲突,则不能够成功修改 | 如果在输入框中输入修改的信息不合法或输入的信息跟数据库记录相冲突,则不能够成功修改 | 通过 |
| 用户管理 | 管理员想要删除用户的信息点击删除按钮 | 如果想要删除的用户记录跟其它表有关联,那么则不能够成功删除 | 如果想要删除的用户记录跟其它表有关联,那么则不能够成功删除 | 通过 |
| 用户管理 | 管理员想要搜索用户的信息在输入框中输入用户名称搜索 | 如果在输入框中输入的用户名称与数据库记录不相符则不能够查找得出 | 如果在输入框中输入的用户名称与数据库记录不相符则不能够查找得出 | 通过 |
表6.3 日志管理用例表
| 模块测试 | 测试用例 | 预期结果 | 实际结果 | 是否通过 |
| 日志管理 | 管理员想要添加日志的信息输入日志必填的信息 | 如果输入的信息合法并且跟数据库记录不相冲突,则能够添加初稿 | 如果输入的信息合法并且跟数据库记录不相冲突,则能够添加初稿 | 通过 |
| 日志管理 | 管理员想要修改日志的信息点击修改按钮 | 如果在输入框中输入修改的信息不合法或输入的信息跟数据库记录相冲突,则不能够成功修改 | 如果在输入框中输入修改的信息不合法或输入的信息跟数据库记录相冲突,则不能够成功修改 | 通过 |
| 日志管理 | 管理员想要删除日志的信息点击删除按钮 | 如果想要删除的日志记录跟其它表有关联,那么则不能够成功删除 | 如果想要删除的日志记录跟其它表有关联,那么则不能够成功删除 | 通过 |
| 日志管理 | 管理员想要搜索日志的信息在输入框中输入日志名称搜索 | 如果在输入框中输入的日志名称与数据库记录不相符则不能够查找得出 | 如果在输入框中输入的日志名称与数据库记录不相符则不能够查找得出 | 通过 |
个人博客管理系统开发的整个步骤有:需求分析、功能设计、系统实现和软件测试。需求分析目的为确定软件是否值得开发和可行性如何。功能设计确定了软件具有哪些功能。系统实现为实现一个可用的个人博客管理系统出来。在软件测试中则为系统测试。如果系统中存有的问题及早发现的话后续的修改成本会降低,破坏范围也会进一步缩小。所以,在系统发布之前的时候,需要尽可能地找出系统中存在的问题,所以需要有计划和组织地进行测试。如果系统已经投入使用的话,那么发现的问题的危害性会被放大,从而影响了用户的体验。
在撰写论文和编写毕业设计的代码的时候,我查阅了许多相关资料及参考文献,在老师和同学的共同帮忙下,能够一步一步完成论文的撰写和系统的实现。在实现程序的过程当中,我渐渐地收获了一些心得:
(1)程序设计所花的时间不少,在程序设计的过程当中会遇到不少的问题,从最开始的遇到问题只能查阅有关资料才能够解决,到最后能够通过编译器解决问题。我知道了坚持的珍贵和收获成果时的成就感。
(2)由于前期准备工作做得不是很彻底,在程序开发的过程当中遇到了不少的问题,导致了在后面需要修改代码的时候多花费了很多的时间,这更让我深刻地意识到在设计系统的时候要做足需求分析,以防后期需要修改代码的时候花费过多的时间。
总而言之,在以后如果要开发个人博客管理系统的时候,我们要汲取教训,需要事先设计好系统和需求分析。在日常生活的时候,还需要不断地积累知识。
在开发系统的过程当中,我通过运用开源框架来提高系统的性能,同时这有益于我熟悉自己掌握的技术,这都能增加系统的性能。本个人博客管理系统还存着不少的缺陷之处,需要加强某些功能模块,希望能够在接下来的时候加强对个人博客管理系统的改进。具体来说需要包含以下几个部分:
(1)对开发个人博客管理系统的时候,可以加入大数据技术能够推荐用户需要的服务。
(2)系统的安全性能相对比较简单,现在的安全性是仅仅在基础上能够保证个人博客管理系统的安全性,在未来当中还需要进一步加强系统的安全性。
大学的学习和生活很快就要结束了,在天津理工大学中环信息学院这个学校里边,我能够感受到的不止有老师温暖地教导和同学们的友情,还有学校领导对学生的关心。在班级联系群里,老师经常问我们饭菜是否可口和住宿舍是否能够习惯,公共设施是否需要改进的建议,让我们能够经常地感到温暖,在这里向所有帮助过我的人说一声感谢。
在这里首先需要感谢的是我的指导老师,无论是在学习还是生活上指导老师都给了我许多的帮助。老师这几年来对我的教导我会永远记载心里。在指导老师的指导下,我收获到了知识和做人的道理。指导老师严谨的工作态度和为人处世的方法让我得到了很多的知识,很感谢我能够成为您的学生。
同时我还需要感谢所有教过我专业课的老师,如果没有你们细心地教育,最后我也不能够顺利完成论文的撰写,把学校学习的知识应用到实际生活中将会是我以后发展的源泉。
还要感谢我的同学们,在撰写论文和系统设计的时候,我遇到了很多的困难,同学们耐下地教导我,给了我很多的参考资料,给予了我很多的帮助,感谢同学们给了我很多的鼓励。
最后,我要感谢的是我的答辩老师们给了我一个机会,一个能够检测自己多年来学习成果的机会,让我在未来的工作中有了更明确的发展方向,并为之不断地努力着。我将会在以后的工作和学习中更加努力。