基于SpringBoot的IT技术交流和分享平台(源码+L文+说明文档)
目录
4 系统设计
4.1系统概要设计
基于Spring Boot的IT技术交流和分享平台并没有使用C/S结构,而是基于网络浏览器的方式去访问服务器,进而获取需要的数据信息,这种依靠浏览器进行数据访问的模式就是现在用得比较广泛的适用于广域网并且没有网速限制要求的B/S结构,图4-1就是开发出来的程序工作原理图。
图4-1 系统工作原理图
4.2系统结构设计
系统结构设计是一个将一个庞大的任务细分为多个小的任务的过程,这些小的任务分段完成后,组合在一起形成一个完整的任务。本基于Spring Boot的IT技术交流和分享平台主要管理员模块以及用户模块两大部分,系统结构图如图4-1所示。
图4-2系统功能模块图
4.3 数据库设计
一个好的数据库可以关系到程序开发的优劣,数据库设计离不开表结构的设计,还有表与表之间的联系,以及系统开发需要设计的数据表内容等信息。在进行数据库设计期间,还是需要多花时间进行考虑,最终设计出配套程序的数据库出来。
4.3.1 数据库概念结构设计
程序设计是离不开对应数据库的设计操作的,这样的做法就是减少数据对程序的依赖性,所以数据库的设计也是需要花费大量的日常时间来进行设计的,在设计中对程序开发需要存储的数据信息进行实体划分,先确认实体,然后设计实体的属性等操作,这种设计就是数据库设计里面不能少的必须有的E-R模型设计。为了降低程序设计的对应的数据库设计难度,开发人员也可以使用相应的工具来进行E-R模型设计,现在市面上设计E-R模型的工具有PowerDesigner建模工具,Navicat制作工具,还有微软的Visio绘图工具。为了简便起见,本程序在设计E-R模型的时候,就选用了微软的Visio这款功能强大,操作便利的绘图工具。
数据库概念结构设计通俗来说就是把前面所做的需求分析报告转变为抽象的信息结构,数据库概念结构设计相比数据模型要更加稳定、抽象和独立。它的特点有方便修改、能够容易理解、转换成层次、关系等数据模型变得更加容易,对现实世界反映客观真实充分等。数据库设计这块,在描述概念模型工具的选择上通常是用E-R模型(实体-联系模型)表现出来。本基于Spring Boot的IT技术交流和分享平台的E-R图如下所示:
(1)管理员信息实体属性图如图4-4所示:
图4-4 管理员信息实体属性图
(2)用户信息实体属性图如图4-5所示:
图4-5 用户信息实体属性图
(3)笔记信息实体属性图如图4-6所示:
图4-6 笔记信息实体属性图
(4)笔记类型信息实体属性图如图4-7所示:
图4-7 笔记类型信息实体属性图
4.3.2 数据库逻辑结构设计
数据库的逻辑结构的设计需要将前面概念设计得到的E-R图转换成关系模型。接着就是优化关系模型,逻辑结构设计的过程表现如下
图4-10 逻辑结构设计的过程
优化关系模型有许多方式,这些方式包括了对数据之间的依赖进行确定;处理关系模式间的数据依赖,一些多余的联系需要及时清理;要明白和界定各个关系模式在第几范式;关系模式的分解或合并处理也是必要的。设计中对关系模型的优化就可以按照上述提示进行操作。
本次开发的基于Spring Boot的IT技术交流和分享平台它的数据结构就比较清晰明了。开发出来的基于Spring Boot的IT技术交流和分享平台的后台数据库是由许多的数据表组成的,下面我们将选取一部分数据表进行具体描述:
表4-1 users管理员信息表
字段名 | 数据类型 | 是否允许空 | 字段含义 |
id | int(11) | NOT NULL | 编号 |
username | varchar(100) | NULL | 用户名 |
password | varchar(100) | NULL | 密码 |
role | varchar(100) | NULL | 角色 |
addtime | timestamp | NULL | 新增时间 |
表4-2 yonghu用户信息表
字段名 | 数据类型 | 是否允许空 | 字段含义 |
id | bigint(20) | NOT NULL | 编号 |
addtime | timestamp | NULL | 创建时间 |
yonghuming | ` varchar(200) | NULL | 用户名 |
mima | ` varchar(200) | NULL | 密码 |
xingming | ` varchar(200) | NULL | 姓名 |
xingbie | ` varchar(200) | NULL | 性别 |
shouji | ` varchar(200) | NULL | 手机 |
youxiang | ` varchar(200) | NULL | 邮箱 |
shenfenzheng | ` varchar(200) | NULL | 身份证 |
zhaopian | ` varchar(200) | NULL | 照片 |
表4-3 bijifenxiang笔记分享信息表
字段名 | 数据类型 | 是否允许空 | 字段含义 |
id | bigint(20) | NOT NULL | 编号 |
addtime | timestamp | NULL | 创建时间 |
`bijimingcheng | ` varchar(200) | NULL | 笔记名称 |
bijileixing | ` varchar(200) | NULL | 笔记类型 |
bijibiaoti` | ` varchar(200) | NULL | 笔记标题 |
bijitupian | ` varchar(200) | NULL | 笔记图片 |
bijifujian | ` varchar(200) | NULL | 笔记附件 |
bijineirong | ` varchar(200) | NULL | 笔记内容 |
faburiqi | ` varchar(200) | NULL | 发布日期 |
yonghuming | ` varchar(200) | NULL | 用户名 |
xingming | ` varchar(200) | NULL | 姓名 |
thumbsupnum | int(11) | NULL | 赞数 |
crazilynum` | int(11) | NULL | 踩数 |
clicktime | datetime | NULL | 最近点击时间 |
clicknum | int(11) | NULL | 点击次数 |
表4-4 bijileixing笔记类型信息表
字段名 | 数据类型 | 是否允许空 | 字段含义 |
id | bigint(20) | NOT NULL | 编号 |
addtime | timestamp | NULL | 创建时间 |
leixing | varchar(50) | NULL | 类型 |
5 系统的实现
5.1 用户功能模块的实现
用户在系统前台可查看系统信息,系统前台主界面展示如图5-1所示。
图5-1系统前台主界面
5.1.1用户注册界面
没有账号的用户可进行注册操作,用户注册界面展示如图5-2所示。
图5-2用户注册界面
5.1.2用户登录界面
用户在登录界面可输入登录信息,点击登录按钮进行登录系统,用户登录界面展示如图5-3所示。
图5-3 用户登录界面
5.1.3笔记分享详情界面
用户可选择笔记分享查看详情信息,笔记分享详情界面展示如图5-4所示。
图 5-4 笔记分享详情界面
5.1.4添加笔记分享界面
用户登录后可添加笔记分享信息,添加笔记分享界面展示如图5-5所示。
图5-5 添加笔记分享界面
5.1.5我的收藏界面
用户可管理个人已有收藏笔记分享信息,我的收藏界面展示如图5-6所示。
图5-6 我的收藏界面
5.2 管理员功能模块的实现
5.2.1管理员登录界面
管理员要想进入系统后台对系统进行管理操作,必须登录系统后台,管理员登录界面展示如图5-7所示。
图5-7 管理员登录界面
5.2.2用户管理界面
管理员在用户管理急么可查看所有用户信息,并可对其进行编辑和删除操作,用户管理界面展示如图5-8所示。
图5-8 用户管理界面
5.2.3笔记类型管理界面
管理员可增删改查笔记类型信息,笔记类型管理界面展示如图5-9所示。
图5-9 笔记类型管理界面
5.2.4笔记分享管理界面
管理员可增删改查笔记分享信息,笔记分享管理界面展示如图5-10所示。
图5-10 笔记分享管理界面