Spring Boot框架下的知识管理与多维分类

4 系统设计
系统分析接下来的操作步骤就是系统的设计,这部分内容也是不能马虎对待的。因为生活都是在不断产生变化,人们需求也是在不断改变,开发技术也是在不断升级,所以程序也需要考虑在今后可以方便进行功能扩展,完成升级。程序也需要具备大容量以及对其它软硬件的适应能力,而不仅仅是满足现有用户提出来的功能需求,程序在设计期间始终要以发展的理念来进行,要让程序的开发技术上具备先进性的特点,也要让程序开发成本降低,以及让程序后期运行使用时易于维护。
4.1 系统结构设计
本程序在设计结构选择上首选B/S,也是为了满足程序今后升级便利,以及程序低维护成本的要求。本程序的网络拓扑设计也会在下图展示,通过图形的方式来描述更容易理解。
在这里插入图片描述

图4.1 系统网络拓扑设计图
4.2系统功能模块设计
程序的功能在系统分析这部分已经确定了,这部分主要还是针对程序功能进行更加详细的设计,设计成果使用结构图展示直观明了,也更容易让人理解。绘制结构图采用的工具是Visio,使用它可以快速绘制出不同角色拥有的功能结构。
在这里插入图片描述

图4.2 功能结构图
4.3数据库设计
对程序的功能分析与结构设计之后,也要对程序数据存储的工具进行选择,本程序选用的数据存储仓库是Mysql,选用这个工具就需要根据该数据库的特点进行数据库文件的创建,并设计与之对应的数据表。
4.3.1数据库E-R图
设计一个数据库,不仅包含了数据库实体的设计,也包括了数据库表的结构设计,此部分内容设计的就是确认数据库的实体,并在此基础上对每个实体应该有的属性值进行分析设计,这些确认好的属性值对接下来的数据表的设计也是有很大帮助的,因为它们代表数据表里面的字段值。通常每个程序的数据库里面都具备用户这样的一个数据表。那么在分析用户这个实体的时候,都会设计出它的属性,有最基本的登录程序的账号属性,有用户的姓名属性,有用户的电话或联系地址属性等内容。一旦确认实体具备的属性之后,就可以采用相应的设计软件绘画出实体属性图,或者是实体之间的E-R图。设计E-R模型的软件有很多,这里列举常用的几个,一个是PowerDesigner,一个是Navicat绘制E-R模型,本设计模块用到的还是之前课堂上就了解并接触的Visio工具,这个工具跟办公软件Word,Excel一样都属于Office里面的一部分。使用Visio工具不仅在软件安装上快捷高效,而且它不会占用很多计算机的存储空间。
(1)下图是知识信息评论表实体和其具备的属性。
在这里插入图片描述

知识信息评论表实体属性图
(2)下图是用户实体和其具备的属性。
在这里插入图片描述

用户实体属性图
(3)下图是知识分类实体和其具备的属性。
在这里插入图片描述

知识分类实体属性图
(4)下图是收藏表实体和其具备的属性。
在这里插入图片描述

收藏表实体属性图
(5)下图是知识信息实体和其具备的属性。
在这里插入图片描述

知识信息实体属性图
(6)下图是用户表实体和其具备的属性。
在这里插入图片描述

用户表实体属性图
4.3.2 数据库表结构
在上述内容中,已经设计出相应的E-R模型,就可以在数据库里面根据各个实体创建相应的数据表,不过在初次使用数据库工具的时候,是需要创建一个针对程序的数据库文件,有了此步操作之后,才在刚创建的数据库文件里面创建数据表,创建数据表需要涉及到字段的设计,主键的设计,字段长度与类型的设计等内容,只有设计好的数据表结构才可以按照此规则存放对应的程序数据。这里举个例子,就拿上面提到的用户实体来说吧,用户具备的属性值,比如账号,比如联系方式与电话等都可以设计成该用户数据表里面的字段,然后对这些字段设计其数据类型,长度,并选择该表的主键作为此用户数据表的唯一标志。数据库里面的各个数据表都有它们的主键,这样也是为了方便区分各个数据表。
表4.1配置文件表
序号 列名 数据类型 说明 允许空
1 Id Int id 否
2 name String 配置参数名称 是
3 value String 配置参数值 是
表4.2知识信息评论表
序号 列名 数据类型 说明 允许空
1 Id Int id 否
2 addtime Date 创建时间 是
3 refid Integer 关联表id 是
4 userid Integer 用户id 是
5 nickname String 用户名 是
6 content String 评论内容 是
7 reply String 回复内容 是
表4.3收藏表
序号 列名 数据类型 说明 允许空
1 Id Int id 否
2 addtime Date 创建时间 是
3 userid Integer 用户id 是
4 refid Integer 收藏id 是
5 tablename String 表名 是
6 name String 收藏名称 是
7 picture String 收藏图片 是
表4.4token表
序号 列名 数据类型 说明 允许空
1 Id Int id 否
2 userid Integer 用户id 是
3 username String 用户名 是
4 tablename String 表名 是
5 role String 角色 是
6 token String 密码 是
7 addtime Date 新增时间 是
8 expiratedtime Date 过期时间 是
表4.5用户表
序号 列名 数据类型 说明 允许空
1 Id Int id 否
2 username String 用户名 是
3 password String 密码 是
4 role String 角色 是
5 addtime Date 新增时间 是
表4.6用户表
序号 列名 数据类型 说明 允许空
1 Id Int id 否
2 addtime Date 创建时间 是
3 yonghuming String 用户名 是
4 mima String 密码 是
5 xingming String 姓名 是
6 touxiang String 头像 是
7 xingbie String 性别 是
8 shouji String 手机 是
表4.7知识分类表
序号 列名 数据类型 说明 允许空
1 Id Int id 否
2 addtime Date 创建时间 是
3 zhishifenlei String 知识分类 是
表4.8知识信息表
序号 列名 数据类型 说明 允许空
1 Id Int id 否
2 addtime Date 创建时间 是
3 zhishibiaoti String 知识标题 是
4 zhishifenlei String 知识分类 是
5 biaoqian String 标签 是
6 fengmiantu String 封面图 是
7 zhishijianjie String 知识简介 是
8 zhishishipin String 知识视频 是
9 zhishifujian String 知识附件 是
10 zhishineirong String 知识内容 是
11 faburiqi Date 发布日期 是
12 clicktime Date 最近点击时间 是
13 clicknum Integer 点击次数 是

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/5410.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

LeetCode17. 电话号码的字母组合(2024秋季每日一题 59)

给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 示例 1: 输入:digits “23” 输出:[“…

Nature Methods | 基于流形约束的RNA速度推断精准解析细胞周期动态调节规律

生信碱移 VeloCycle算法 VeloCycle:基于流形约束的RNA速度推断在细胞周期动态中的精准解析 今天给各位老铁们分享一篇于2024年10月31号发表在 Nature Methods [IF: 36.1] 的文章:"Statistical inference with a manifold-constrained RNA velocity…

Spring挖掘:(AOP篇)

学习AOP时,我们首先来了解一下何为AOP 一. 概念 AOP(面向切面编程,Aspect Oriented Programming)是一种编程技术,旨在通过预编译方式或运行期动态代理实现程序功能的统一管理和增强。AOP的主要目标是在不改变原有业务逻辑代码的…

【机器学习】k最近邻分类

📝本文介绍 本文为作者阅读鸢尾花书籍以及一些其他资料的k最近邻分类后,所作笔记 👋作者简介:一个正在积极探索的本科生 📱联系方式:943641266(QQ) 🚪Github地址:https://github.com…

《深度学习》bert自然语言处理框架

目录 一,关于bert框架 1、什么是bert 2、模型结构 自注意力机制: 3、预训练任务 4、双向性 5、微调(Fine-tuning) 6、表现与影响 二、Transformer 1、传统RNN网络计算时存在的问题 1)串联 2)并行…

开源 - Ideal库 - 常用时间转换扩展方法(一)

从事软件开发这么多年,平时也积累了一些方便自己快速开发的帮助类,一直在想着以什么方式分享出来,因此有了这个系列文章,后面我将以《开源-Ideal库》系列文章分享一些我认为比较成熟、比较方便、比较好的代码,如果感觉…

网络安全漏洞管理十大度量指标

前言 当前,网络安全漏洞所带来的风险及产生的后果,影响到网络空间乃至现实世界的方方面面,通信、金融、能源、电力、铁路、医院、水务、航空、制造业等行业各类勒索、数据泄露、供应链、钓鱼等网络安全攻击事件层出不穷。因此,加…

R语言*号标识显著性差异判断组间差异是否具有统计意义

前言 该R代码用于对Iris数据集进行多组比较分析,探讨不同鸢尾花品种在不同测量变量(花萼和花瓣长度与宽度)上的显著性差异。通过将数据转换为长格式,并利用ANOVA和Tukey检验,代码生成了不同品种间的显著性标记&#x…

Web前端PC端开发者工具详细介绍(约10000字保姆级讲解)

1.Elements部分 首先按下F12键即可进入开发者工具页面,以CSDN博客页面为例,如下可以看到右侧是该页面所对应的前端代码。 在Elements部分的Styles模块下可以看页面的各个类别的样式等。 (1)点击.cls可以开启动态修改元素的class&a…

SQL Server 日志记录

SQL Server是一个关系数据库管理系统(RDBMS),旨在有效地存储、组织、检索和操作大量结构化数据。SQL Server日志是监控数据库活动、排查问题和确保数据一致性的基础,这些日志记录了SQL Server实例中发生的事件的时间顺序。它们充当…

Qt QCustomplot 在采集信号领域的应用

文章目录 一、常用的几种开源库:1、QCustomPlot:2、QChart:3、Qwt:QCustomplot 在采集信号领域的应用1、应用实例时域分析频谱分析2.数据筛选和处理其他参考自然界中的物理过程、传感器和传感器网络、电路和电子设备、通信系统等都是模拟信号的来源。通过可视化模拟信号,可以…

【数据结构】堆和二叉树(2)

文章目录 前言一、建堆和堆排序1.堆排序 二、二叉树链式结构的实现1.二叉树的遍历 三、链式二叉树的功能函数1.二叉树结点个数2.二叉树叶子结点个数3.二叉树的高度4.二叉树第k层结点个数5. 二叉树查找值为x的结点6.二叉树销毁 总结 前言 接着上一篇博客,我们继续分…

PDF多功能工具箱 PDF Shaper v14.6

如今对PDF处理的软件很多都是只是单一的功能。PDF Shaper给你完全不同的体验,因为PDF Shaper是一款免费的PDF工具集合的软件。有了PDF Shaper,你以后再也不用下载其他处理PDF的软件了。PDF Shaper的功能有:合并,分割,加…

猫用空气净化器哪个牌子好?求除毛好、噪音小的宠物空气净化器!

换毛季家里孩子不省心,疯狂掉落的猫毛和空气中乱飞的浮毛可把我折磨死了。每天下班都要抽出时间来清理,不然这个家就不能要了。猫毛靠我自己可以打扫,浮毛还得借助宠物空气净化器这种专业工具。所以我最近着手做功课,打算入手一台…

Halcon 矫正图像 图像矫正

目录 原图 矫正后的图像 ​编辑 示例代码 原图 矫正后的图像 示例代码 找ROI部分代码暂无法分享 HomMat2DInvert : []Row_T : []Col_T : []region_features (ROI, rectangularity, Value)if (Value > RectY)HomMat2DInvert : []smallest_rectangle1 (ROI, Row_T, Col…

Spring Boot 3.x 中使用 SpringDoc 2 / Swagger3(详解)

大家好,我是码哥,《Redis 高手心法》作者。 SpringBoot 已经成为 Java 开发的首选框架,今天码哥跟大家聊一聊 Spring Boot3 如何与 Swagger3 集成打造一个牛逼轰轰的接口文档。 为什么要用 Swagger 唐二婷:我最讨厌两件事&#xf…

Java中四种引用类型【快速理解】图文

一、强引用 我们正常手动new出来的对象都是强应用,不对他进行别的操作的时候它是不会进行垃圾回收的。除非将它的引用断开,此时调用垃圾回收器才会将它回收。 二、软引用 三、虚引用 虚引用的意思就是,引用关系是虚的,如果创造出…

C语言-详细讲解-洛谷P1075 [NOIP2012 普及组] 质因数分解

1.题目要求 2.题目解析 解题点在于如何分解质因数&#xff0c;这里介绍一下短除法。&#xff08;虽然解决这个问题可以不用短除法&#xff09; 3.代码实现 贴一下自己的代码 #include <stdio.h> #include <math.h>int main() {int n, i;scanf("%d",…

Kubernetes Extended Resource 扩展资源使用简介

Kubernetes 除了提供基于 CPU 和内存的传统计算资源调度外&#xff0c;还支持自定义的 Extended Resource 扩展资源&#xff0c;以便调度和管理其它各种类型的资源。 Extended Resource Extended Resource 扩展资源的创建和使用过程如下图所示&#xff1a; 定义资源&#xff…

javaweb基于springboot社区养老服务管理系统

简介&#xff1a; 系统整体设计分为三个角色&#xff0c;分别是社区员工、社区老人、社区系统管理员。在功能模块上分为三大块&#xff1a;人员管理模块、健康管理模块和活动管理模块。 人员管理模块能够对社区系统管理员信息、社区员工信息、社区老人信息进行管理。健康管理模…