springboot个人博客系统的设计与实现(代码+数据库+LW)
摘 要
本系统为博主而设计制作个人博客系统,旨在实现个人博客智能化、现代化管理。本个人博客管理自动化系统的开发和研制的最终目的是将个人博客的运作模式从手工记录数据转变为网络信息查询管理,从而为现代管理人员的使用提供更多的便利和条件。使个人博客系统数字化、智能化,是提高工作效率的重要举措。
为了更好地发挥本系统的技术优势,根据个人博客系统的需求,本文尝试以B/S架构设计模式中的Spring Boot框架,JAVA语言为基础,通过必要的编码处理、个人博客系统整体框架、功能服务多样化和有效性的高级经验和技术实现方法,旨在完成一个快速、高效、便捷的个人博客系统。本系统以博主与管理员两类人,作为目标博主,其中博主主要功能包含博主的注册与登录,发布博文信息、博客相册、新闻资讯、留言板等,对账号相关信息的修改;管理员主要功能包括了博主、博文信息、博文类型、博客相册、留言板等;管理员可以实现最高权限级别的全系统管理,
关键字:个人博客系统
目 录
摘要 I
Abstrac II
第1章 绪论 1
1.1 研究背景
1.2 国内外研究现状 2
1.3 课题意义
第2章 系统相关技术
2.1 Spring Boot框架介绍
2.2 Vue简介
2.3 Java编程语言
2.4 MySQL数据库
2.5 系统开发、运行环境
第3章 需求分析
3.1 非功能需求分析
3.2 技术可行性
3.3 经济可行性
3.4 操作可行性
3.5 系统用例图
第4章 系统设计
4.1 总体功能设计
4.2 系统登录模块设计
4.3 数据库设计
第5章 系统实现 16
5.1前台系统功能模块实现 18
5.2后台管理员功能模块实现 18
5.3后台博主功能模块实现 18
第6章 系统测试 20
6.1 测试方法与步骤 21
6.2 模块测试 23
6.3 测试用例 24
结论 25
参考文献 26
致谢 30
绪论
1.1 研究背景
近年来,类似管理类的软件数量正逐渐快速增加,人工的记录和数据统计已经变得不完全能够轻松处理出如此巨量庞大复杂的电子数据[1]。为了能更好快速地实现适应现代化社会要求的高效性,一个利用计算机技术来轻松实现自动化个人博客管理工作的系统也将随之诞生。基于以上这一点,设计完成了此个人博客系统,进行规范化管理,方便管理员或博主可以在最短的时间范围内,高效、便捷且准确地去进行对博文信息、博客相册、新闻资讯的浏览、查询或修改等一系列操作[2]。
根据我对上述知识的深入了解,浏览国内外相关研究资料文件与数据,查阅大量相关研究文献、书籍以及各类技术资料,对个人博客系统的用户、数据、需求、特点等多方面内容进行了分析与调研[3]。发现了目前市面上多部分行业还是采用传统的手工记录信息方法进行记录、管理有以下这样方面明显的缺点:信息量大,该相关信息的记录与存储无从下手,且产生大量交互信息,难以及时存档,大量的博文信息对管理员来说是很大的管理负担[4]。根据以上诸多原因,个人博客相关信息的现代化管理需要一个计算机软件来取代传统手工的操作流程来组织、管理这些信息[5]。
电子计算机诞生后,世界因为信息时代的到来发生了翻天覆地的变化。计算机所构成的网络已将整个社会联系起来,整个社会的效率也因此逐步提高,因此当今社会正以前所未有的速度飞速发展着。计算机技术在中国当代企业管理中普遍地被应用,使计算机工具逐渐成为现代人们直接应用掌握现代信息处理技术管理的一项不可或缺的工具[6]。计算机系统能将其原始数据进行分析、加工、储存,工作人员能够在需要补充相关数据时,随时对数据信息进行检索,了解当前个人博客系统信息的更新动态情况,从而能够有效准确的组织、处理,完成对个人博客管理信息化的统一管理指导工作,实现博文信息、博客相册、新闻资讯等信息管理流程的自动化,提高工作效率。
1.2 课题意义
由于电脑的日益广泛与应用,其将逐步演变成为中国工业现代化水平的一重要标志。个人博客管理在整个日常工作流程中总是会出现新的用户信息,博文信息以及基于信息交互而最终形成的博客相册、新闻资讯等。因此,必须全部信息加以管理,实现智能化管理,从而更加快捷地解决用户的需求,并提升工作效率,现对其设置了相关管理办法,以实现上述管理目的[11]。
系统用例图如图3-1、图3-2所示。
整体系统的主要功能模块如图4-1:
数据库关系表设计
数据库关系表如下:
表4-1:用户表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
username | varchar | 100 | 用户名 | ||
password | varchar | 100 | 密码 | ||
role | varchar | 100 | 角色 | 管理员 | |
addtime | timestamp | 新增时间 | CURRENT_TIMESTAMP |
表4-2:token表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
userid | bigint | 用户id | |||
username | varchar | 100 | 用户名 | ||
tablename | varchar | 100 | 表名 | ||
role | varchar | 100 | 角色 | ||
token | varchar | 200 | 密码 | ||
addtime | timestamp | 新增时间 | CURRENT_TIMESTAMP | ||
expiratedtime | timestamp | 过期时间 | CURRENT_TIMESTAMP |
表4-3:博文信息
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
bowenbiaoti | varchar | 200 | 博文标题 | ||
bowenleixing | varchar | 200 | 博文类型 | ||
bowenlaiyuan | varchar | 200 | 博文来源 | ||
bowenneirong | longtext | 4294967295 | 博文内容 | ||
bowenfengmian | longtext | 4294967295 | 博文封面 | ||
fabushijian | date | 发布时间 | |||
bokezhanghao | varchar | 200 | 博客账号 | ||
bokewangming | varchar | 200 | 博客网名 | ||
thumbsupnum | int | 赞 | 0 | ||
crazilynum | int | 踩 | 0 | ||
clicktime | datetime | 最近点击时间 | |||
clicknum | int | 点击次数 | 0 |
表4-4:博文类型
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
bowenleixing | varchar | 200 | 博文类型 |
表4-5:博客相册
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
xiangcemingcheng | varchar | 200 | 相册名称 | ||
xiangceleixing | varchar | 200 | 相册类型 | ||
xiangcejianjie | longtext | 4294967295 | 相册简介 | ||
xiangceneirong | longtext | 4294967295 | 相册内容 | ||
faburiqi | date | 发布日期 | |||
xiangcefengmian | longtext | 4294967295 | 相册封面 | ||
bokezhanghao | varchar | 200 | 博客账号 | ||
bokewangming | varchar | 200 | 博客网名 | ||
thumbsupnum | int | 赞 | 0 | ||
crazilynum | int | 踩 | 0 |
表4-6:收藏表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
userid | bigint | 用户id | |||
refid | bigint | 商品id | |||
tablename | varchar | 200 | 表名 | ||
name | varchar | 200 | 名称 | ||
picture | longtext | 4294967295 | 图片 | ||
type | varchar | 200 | 类型(1:收藏,21:赞,22:踩,31:竞拍参与,41:关注) | 1 | |
inteltype | varchar | 200 | 推荐类型 | ||
remark | varchar | 200 | 备注 |
表4-7:新闻资讯
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
title | varchar | 200 | 标题 | ||
introduction | longtext | 4294967295 | 简介 | ||
picture | longtext | 4294967295 | 图片 | ||
content | longtext | 4294967295 | 内容 |
表4-8:留言板
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
userid | bigint | 留言人id | |||
username | varchar | 200 | 用户名 | ||
avatarurl | longtext | 4294967295 | 头像 | ||
content | longtext | 4294967295 | 留言内容 | ||
cpicture | longtext | 4294967295 | 留言图片 | ||
reply | longtext | 4294967295 | 回复内容 | ||
rpicture | longtext | 4294967295 | 回复图片 |
表4-9:博文信息评论表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
refid | bigint | 关联表id | |||
userid | bigint | 用户id | |||
avatarurl | longtext | 4294967295 | 头像 | ||
nickname | varchar | 200 | 用户名 | ||
content | longtext | 4294967295 | 评论内容 | ||
reply | longtext | 4294967295 | 回复内容 |
表4-10:博客相册评论表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
refid | bigint | 关联表id | |||
userid | bigint | 用户id | |||
avatarurl | longtext | 4294967295 | 头像 | ||
nickname | varchar | 200 | 用户名 | ||
content | longtext | 4294967295 | 评论内容 | ||
reply | longtext | 4294967295 | 回复内容 |
表4-11:配置文件
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
name | varchar | 100 | 配置参数名称 | ||
value | varchar | 100 | 配置参数值 |
表4-12:博主
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
bokezhanghao | varchar | 200 | 博客账号 | ||
mima | varchar | 200 | 密码 | ||
bokewangming | varchar | 200 | 博客网名 | ||
xingbie | varchar | 200 | 性别 | ||
shouji | varchar | 200 | 手机 | ||
youxiang | varchar | 200 | 邮箱 | ||
touxiang | longtext | 4294967295 | 头像 |
前台系统功能模块实现
当游客打开系统的网址后,首先看到的就是首页界面。在这里,游客能够看到个人博客系统的导航条显示首页、博文信息、博客相册、新闻资讯、留言板、后台管理、个人中心。系统首页界面如图5-1所示:
博主点击博文信息,在博文信息页面的搜索栏输入博文标题、博文类型等信息,进行查询,还可以查看博文标题、博文类型、博文来源、博文封面、发布时间、博客账号、博客网名、点击次数,还可以点击关注或者评论等操作;如图5-3所示:
博主点击博客相册,在博客相册页面的搜索栏输入相册名称、相册类型等信息,进行查询,还可以查看相册名称、相册类型、发布日期、相册封面、博客账号、博客网名,还可以点击收藏或者评论等操作;如图5-4所示:
后台管理员功能模块实现
本模块主要是使用者可以通过个人博客系统的首页进入该系统。用户输入正确的账号名和密码,一旦输入信息有错,将在系统显示错误提示,同时严禁系统用户做出其他动作。如果注册信息正确无误,系统就会按照使用者的身份信息做出有关权利的判定,用户进入系统,管理者则进入系统。管理员登录主页面如图5-6所示:
管理员进入系统主页面,主要功能包括对系统首页、个人中心、博主管理、博文信息管理、博文类型管理、博客相册管理、留言板管理、系统管理等进行操作。管理员主页面如图5-7所示:
管理员点击博主管理,在博主管理页面对博客账号、博客网名、性别、手机、邮箱、头像等信息,可以查询,新增或删除博主信息等操作。如图5-8所示:
结 论
本系统相对于我查阅到的其他个人博客系统具有如下优点:其功能全面、易于日后程序更新、数据库管理容易、界面友好、操作方便、效率高、安全性好。
本系统在技术层面具有如下优点:第一,用java实现动态页面,使软件系统具备了很好的可维护性和可复用性。其次,在本系统的编写流程中使用的是Spring Boot框架,该框架将更有效的把显示功能与逻辑分开,使得模块更易于管理,尤其适用于大型项目的编写。第三,后台使用的MySQL数据库系统,MySQL的数据库系统引擎主要集中在了对XML标准的支持,同时具备可扩充、容易应用和安全性高的优点。
综上所述,通过这次从零开始的毕业设计是一次全新的开始,也期待圆满结束。我也希望这次的设计能通过我后期的自主学习把它趋向于完美,成为我的自主创作经验。