SpringBoot平台:古典舞爱好者的在线聚集地

第三章 系统分析
3.1 可行性分析
需要使用大部分精力开发的古典舞在线交流平台为了充分降低开发风险,特意在开发之前进行可行性分析这个验证系统开发是否可行的步骤。本文就会从技术角度,经济角度,还有操作角度等进行综合阐述。
3.1.1技术可行性
本文将开发的系统,将采用的关键技术包括JAVA编程语言、B/S架构、MYSQL数据库存储技术等。另外,程序开发需要在自己电脑上安装的软件并不多,在win7操作系统的大环境下,能够完全搭建好程序开发的操作环境,比如开房工具,MYSQL数据库工具,以及处理程序图片的Photoshop工具等都能安装在自己的电脑上。总的说来,开发这个程序在技术上是可以实现的,该项目的开发是有保障的。
3.1.2经济可行性
开发这个程序软件并不会涉及到经济上面的开销,在开发软件的选择上也不会额外付费安装软件,在开发软件的官网上面就可以下载需要的软件,并根据提示的安装步骤安装软件到自己的电脑上面。因此,该项目的实施在经济上完全可行。
3.1.3操作可行性
操作可行性主要是针对系统用户而言,一个系统再完美,技术再先进,用户不去使用,或者用户根本不会使用,该系统存在的价值也是不大的。本系统拟采用的是B/S架构,用户只要通过点击浏览器即可轻松访问,而用户对浏览器操作非常熟练,所以从用户的角度而言,没有任何学习成本,因此,操作上是可行性的。
3.1.4时间可行性
从时间上看,在三个月的时间里学习相关知识,开发本古典舞在线交流平台,时间上是有点紧,但是不是不可能实现,在做毕业设计的这几个月里,我通过努力使得功能应该基本可以实现。
从上面几个部分的可行性分析得出,这次开发的古典舞在线交流平台在开发上面没有什么大问题,值得开发。
3.2系统性能分析
3.2.1 系统安全性
程序在使用中是不允许其他访问者随意窃取程序里面的隐秘信息,也不允许其他操作者越权操作其他管理用户操作的功能,要真正杜绝这些现象就必须在程序开发之前把程序的安全性给考虑进去。
比如现在很多程序都会把用户注册的功能给考虑进去,让用户在注册页面功能区填写自己的个人信息,这些数据信息涵盖了用户本人的姓名,用户对程序登录设置的密码,用户经常使用的邮箱,用户的常用联系方式还有用户的所住地址等信息,这些信息都是设计到用户本人的隐私,那么这些信息在传输给程序后台时,是需要进行管理并保存至对应的数据库文件里面。要是有人恶意窃取程序的数据信息,也就会让那些注册了此程序软件的用户的个人隐秘信息都会遭到泄露。这些信息落入其他不法分子手里,他们极有可能根据用户的隐私信息去骚扰用户,并把这些信息用于各种商业用途谋取其他非法的利益。所以数据安全性是一个系统能不能使用的首要标准。
3.2.2 数据完整性
数据完整性是确保数据信息是否具有可靠性,是否具有参考价值的一个重要因素,数据信息只描述一部分,或者必有的数据信息反而为空等现象都是代表着这个数据信息不完整,有数据缺陷,这是个很严肃的问题,因为这样的数据信息跟垃圾信息没什么两样。
说到数据完整性,不得不提最常用的程序表单功能。这些表单主要就是提取广大用户的数据信息的,需要广大用户根据表单上的要求,填写自己的姓名信息,以及自己的联系方式信息,有些也会有额外的信息填写要求,有必须要填的选项,也有不需要必填的选项。假如广大用户为了保护自己的隐私,或者不想受到其他人的骚扰,不填写必填项等信息,广大用户在最后提交此表单的时候,往往都是提交不了的。
由于数据表之间也会存在一定的联系,所以同一个数据也会出现在另一个表格里面,那么这两个表格记录的同一个数据应该是一样的。不能够是同样的数据信息在不同表中不一样。
3.2.3系统可扩展性
一切事物都是一直在发展,程序员开发软件也需要带着发展的思维去进行软件开发操作,这样的话,开发出来的程序在应对管理所需时,也会相对应的进行程序升级与更新。不论是功能完善还是数据库升级都能在原来的基础上对原有程序进行迭代升级。让开发出来的程序能够走得越来越远。这也是广大用户对程序软件的使用要求。
3.3系统流程分析
3.3.1注册流程
未有账号的用户可进行注册操作,用户注册流程图如图3.1所示。
在这里插入图片描述

图3.1注册流程图
3.3.2登录流程
登录模块主要满足了管理员和用户的权限登录,用户登录流程图如图3.2所示。
在这里插入图片描述

图3.2 登录流程图
3.4.3发帖流程
用户发帖前提必须是登录后才能进行,发帖内容不能为空,且合法才能进行提交发表成功。详见图3.3所示。
在这里插入图片描述

图3.3 发帖流程图
3.4系统功能分析
本古典舞在线交流平台主要分管理员和用户两大功能模块,下面将详细介绍管理员和用户分别实现的功能。
3.4.1用户功能分析
用户在系统前台可查看系统信息,包括首页、服务、课程、视频、论坛交流、舞蹈资讯等,用户要想实现发帖、服饰购买等操作,必须登录系统,没有账号的用户可进行注册操作,注册登录后主要功能模块包括个人中心、我的订单、我的地址、服饰管理、课程管理、视频管理、论坛交流管理以及我的收藏管理。用户用例图如图3.4所示。
在这里插入图片描述

图3.4 用户用例图
3.4.2管理员功能分析
管理员可登录系统后台对系统进行全面管理操作,管理员主要功能模块包括个人中心、会员用户管理、服饰管理、课程管理、视频管理、论坛交流管理、服务类型管理、视频分类管理、课程类型管理、系统管理以及订单管理。 管理员用例图如图3.5所示。
在这里插入图片描述

图3.5 管理员用例图

第四章 系统设计
4.1系统概要设计
本古典舞在线交流平台采用B/S结构来开发,这种结构是在互联网兴起后出现的,是一个适用于互联网环境下的模型结构,用户只要能上网通过浏览器就可以在任何时间、任何地点的使用。系统工作原理图如图4-1所示:
在这里插入图片描述

图4.1 系统工作原理图
4.2 系统结构设计
系统整体设计是一个将一个庞大的任务细分为多个小的任务的过程,这些小的任务分段完成后,组合在一起形成一个完整的任务。本古典舞在线交流平台主要包括用户功能模块和管理员功能模块,系统功能模块图如图4.2所示。
在这里插入图片描述

图4.2 系统功能模块图
4.3 数据库设计
4.3.1数据库E-R图设计
E-R图是一种描述显示数据类型间的关系的数据描述方法,E-R图可以完整地映射出现实模型的关系。E-R图中的三个最为重要的元素就是实体、属性、关系。E-R图即由这三点组成。
实体:E-R图中数据的实体,用矩形表示上面为实体名,下面为实体属性,实体包含主外键等关系。
属性:E-R图中的属性,是指实体的属性,实体由多条属性所构成,属性拥有自己的数据类型,数据大小。属性的优劣决定了E-R图中实体的健全性、完整性。
关系:E-R图中的关系是指实体之间的关系,用菱形来表示实体间的关系,这些菱形关系的联系上有着一对多或多对多的数据联系,这些构成了E-R图的关系,E-R图的关系紧密连接了实体,使实体间的关联性更加的显著、易懂。本古典舞在线交流平台的E-R图如下所示:
(1)论坛交流信息实体E-R图如图4.3所示:
在这里插入图片描述

图4.3 论坛交流信息实体属性图
(2)管理员信息实体E-R图如图4.4所示:
在这里插入图片描述

图4.4 管理员信息实体属性图
(3)订单信息实体E-R图如图4.5所示:
在这里插入图片描述

图4.5 订单信息实体属性图
(4)服饰信息实体E-R图如图4.6所示:
在这里插入图片描述

图4.6 服饰信息实体属性图
(5)用户信息实体E-R图如图4.7所示:
在这里插入图片描述

图4.7用户信息实体属性图
4.3.2数据库表设计
古典舞在线交流平台采用MYSQL数据库作为数据存储,下面介绍数据库中的各个表的详细信息。
表4.1 forum论坛交流信息表
列名 数据类型 长度 允许空 说明
id bigint 20 否 编号
addtime timestamp 是 创建时间
title varchar 200 是 帖子标题
content longtext 是 帖子内容
parentid bigint 20 是 父节点编号
userid bigint 20 是 用户编号
username varchar 200 是 用户名
isdone varchar 200 是 状态

表 4.2 users管理员信息表
列名 数据类型 长度 允许空 说明
id bigint 20 否 编号
username varchar 100 是 用户名
password varchar 100 是 密码
role varchar 100 是 角色
addtime timestamp 是 新增时间

表 4.3 orders订单信息表
列名 数据类型 长度 允许空 说明
id bigint 20 否 编号
addtime timestamp 是 下单时间
orderid varchar 200 是 订单编号
tablename varchar 200 是 商品表名
userid bigint 20 是 用户编号
goodid bigint 20 是 商品编号
goodname varchar 200 是 商品名称
picture varchar 200 是 商品图片
buynumber int 11 是 购买数量
price float 是 价格
discountprice float 是 折扣价格
total float 是 总价格
discounttotal float 是 折扣总价格
type int 11 是 支付类型
status varchar 200 是 状态
address varchar 200 是 地址
tel` varchar 200 是 电话
consignee varchar 200 是 收货人

表4.4 fushi服饰信息表
列名 数据类型 长度 允许空 说明
id bigint 20 否 编号
addtime timestamp 是 创建时间
shangpinbianhao varchar 200 是 商品编号
mingcheng varchar 200 是 商品名称
tupian varchar 200 是 图片
leixing varchar 200 是 类型
xiangxicanshu` longtext 是 详细参数
thumbsupnum int 11 是 赞数
crazilynum int 11 是 踩数
clicknum int 11 是 点击次数
price float 是 价格

表4.5 huiyuanyonghu用户信息表
列名 数据类型 长度 允许空 说明
id bigint 20 否 编号
addtime timestamp 是 创建时间
zhanghao varchar 200 是 账号
mima varchar 200 是 密码
xingming varchar 200 是 姓名 xingbie varchar 200 是 性别 shouji` varchar 200 是 手机
youxiang varchar 200 是 邮箱
shenfenzheng varchar 200 是 身份证
zhaopian varchar 200 是 照片
money float 是 余额

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

OpenFeign微服务部署

一.开启nacos 和redis 1.查看nacos和redis是否启动 docker ps2.查看是否安装nacos和redis docker ps -a3.启动nacos和redis docker start nacos docker start redis-6379 docker ps 二.使用SpringSession共享例子 这里的两个例子在我的一个博客有创建过程&#xff0c…

netty之Netty与SpringBoot整合

前言 在实际的开发中,我们需要对netty服务进行更多的操作,包括;获取它的状态信息、启动/停止、对客户端用户强制下线等等,为此我们需要把netty服务加入到web系统中。 MyChannelInitializer public class MyChannelInitializer ex…

【Android 源码分析】Activity生命周期之onDestroy

忽然有一天,我想要做一件事:去代码中去验证那些曾经被“灌输”的理论。                                                                                  – 服装…

python爬虫 - 初识爬虫

🌈个人主页:https://blog.csdn.net/2401_86688088?typeblog 🔥 系列专栏:https://blog.csdn.net/2401_86688088/category_12797772.html 目录 前言 一、爬虫的关键概念 (一)HTTP请求与响应 &#xff0…

Discord:报错:A fatal Javascript error occured(解决办法)

按 Windows 键 R 并输入 %appdata% 选择 discord 文件夹并将其删除。 再次按 Windows 键 R 并输入 %LocalAppData% 选择 discord 文件夹并再次将其删除。 附加: 如果还不行,就通过官网下载吧,这个问题通过epic下载可能会有

TypeScript 第三部分 扩展

1. 声明文件 主要作用: 类型声明:为库或模块提供类型信息。全局声明:为全局作用域中的类型和变量提供声明。类型兼容性:确保第三方库或自定义代码的类型正确性。代码提示与检查:在开发环境中提供更好的代码提示和类型…

关于深度学习torch的环境配置问题

已经下好了torch在虚拟环境中,结果在ipynb文件中无法运行 后来在终端直接用python语句编译 发现没有问题 在编辑测试py文件 发现runcode有问题 原来是插件默认base环境 具体操作参考VS Code插件Code Runner使用python虚拟环境_coderunner怎么在虚拟环境中使用-CSD…

11. 异步编程

计算机的核心部分,即执行构成我们程序的各个步骤的部分,称为处理器。我们迄今为止看到的程序都会让处理器忙个不停,直到它们完成工作。像操作数字的循环这样的程序的执行速度几乎完全取决于计算机处理器和内存的速度。但是,许多程…

微服务nginx解析部署使用全流程

目录 1、nginx介绍 1、简介 2、反向代理 3、负载均衡 2、安装nginx 1、下载nginx 2、解压nginx安装包 3、安装nginx​编辑 1、执行configure命令 2、执行make命令 4、启动nginx 1、查找nginx位置并启动 2、常用命令 3、反向代理 1、介绍反向代理配置 1、基础配置…

Windows上面搭建Flutter Android运行环境

Windows 上面搭建 Flutter Android 运 行环境(适用于 Flutter3.7.3之后的版本)。 提示: Flutter3.7.x 之前的版本配置请参考教程,或者参考文档《 Flutter Android 开发环境搭建,适用于 Flutter3.3.10之前的版本》。 …

MySQL-SQL(DDL、DML、DQL、DCL)

一、 MySQL启动: MySQL客户端连接: 二、SQL 1.SQL通用语法 (1) SQL语句可以单行或多行书写,以分号结尾。 (2) SQL语句可以使用空格/缩进来增强语句的可读性。 (3) MySQL数据库的SQL语句不区分大小写,关键字建议使…

宣城自闭症咨询寄宿学校:为家庭提供专业支持

宣城与广州的自闭症教育探索:星贝育园为家庭提供专业支持 在自闭症儿童教育的广阔领域中,寄宿学校作为一种特殊而重要的教育模式,正逐渐展现出其独特的价值和意义。虽然本文标题提及了宣城的自闭症咨询寄宿学校,但我们的焦点将转…

UE4_Niagara基础实例—4、静态网格体表面生成粒子

效果图: 分析:在物体面上生成粒子,改变粒子的不透明度,让粒子收到力,并添加紊乱,类似于水蒸气。 操作步骤: 1、创建个niagara 系统,使用模版 simple sprite burst。简单调节参数。…

【算法】链表:160.相交链表(easy)+双指针

系列专栏 《分治》 《模拟》 《Linux》 目录 1、题目链接 2、题目介绍 3、解法(双指针) 返回结果 算法正确性 时间复杂度 4、代码 1、题目链接 160. 相交链表 - 力扣(LeetCode) 2、题目介绍 ​ 3、解法(…

[C#]C# winform部署yolov11目标检测的onnx模型

yolov11官方框架:https://github.com/ultralytics/ultralytics 【测试环境】 vs2019 netframework4.7.2 opencvsharp4.8.0 onnxruntime1.16.2 【效果展示】 【实现部分代码】 using System; using System.Collections.Generic; using System.ComponentModel;…

安卓真机调试“no target device found“以及“ INSTALL_FAILED_USER_RESTRICTED“两个问题的解决办法

目录 1 no target device found问题解决办法 2 “INSTALL_FAILED_USER_RESTRICTED”解决办法 使用android studio 2023.2.1.23windows版本。手机为小米K70 Pro 1 no target device found问题解决办法 参考小米手机如何开启usb调试功能? (baidu.com) 1 联接手机…

Pikachu-File Inclusion-远程文件包含

远程文件包含漏洞 是指能够包含远程服务器上的文件并执行。由于远程服务器的文件是我们可控的,因此漏洞一旦存在,危害性会很大。但远程文件包含漏洞的利用条件较为苛刻;因此,在web应用系统的功能设计上尽量不要让前端用户直接传变…

Pikachu-Sql-Inject -基于boolian的盲注

基于boolean的盲注: 1、没有报错信息显示; 2、不管是正确的输入,还是错误的输入,都只显示两种情况,true or false; 3、在正确的输入下,输入and 1 1/and 1 2发现可以判断; 布尔盲注常用函数&…

【论文笔记】Visual Instruction Tuning

🍎个人主页:小嗷犬的个人主页 🍊个人网站:小嗷犬的技术小站 🥭个人信条:为天地立心,为生民立命,为往圣继绝学,为万世开太平。 基本信息 标题: Visual Instruction Tunin…

关于 JVM 个人 NOTE

目录 1、JVM 的体系结构 2、双亲委派机制 3、堆内存调优 4、关于GC垃圾回收机制 4.1 GC中的复制算法 4.2 GC中的标记清除算法 1、JVM 的体系结构 "堆"中存在垃圾而"栈"中不存在垃圾的原因: 堆(Heap) 用途:堆主要用于存储对象实例和数组。在Java中…