当前位置: 首页 > article >正文

在线课程管理:SpringBoot技术的应用

2相关技术

2.1 MYSQL数据库
MySQL是一个真正的多用户、多线程SQL数据库服务器。 是基于SQL的客户/服务器模式的关系数据库管理系统,它的有点有有功能强大、使用简单、管理方便、安全可靠性高、运行速度快、多线程、跨平台性、完全网络化、稳定性等,非常适用于Web站点或者其他应用软件的数据库后端的开发工作。此外,用户可利用许多语言编写访问MySQL数据库的程序。作为开放源代码运动的产物之一,MySQL关系数据库管理系统越来越受到人们的青睐,应用范围也越来越广。速度和易用性使MySQL特别适用于Web站点或应用软件的数据库后端的开发工作。
MYSQL数据库具有以下特点:
1、C和C ++中使用和测试,以确保源代码的编译器的便携性和灵活性。
2、支持多种操作系统AIX的,FreeBSD下,HP-UX,Linux和Mac OS中,Novell公司的Netware,OpenBSD系统,OS/2裹时,Solaris,Windows等。
3、提供了用于不同的编程语言的API。编程语言,如C, C ++,Python和Java的,的Perl,PHP,埃菲尔铁塔,Ruby和Tcl的。
4、以及使用的CPU资源来支持多线程。
5、算法优化查询SQL,切实提高搜索速度。
6、网络上的客户端和服务器可以用来编程任何独立的编程环境,也有中国,GB2312,BIG5,日文写作,一般基金,用于支持多国语言,并且可以嵌入在数据表和其他软件shift_jis访问柱可以用作的名称。
7、TCP / IP,ODBC和JDBC数据库,并提供连接到其他。
8、管理工具的管理,控制和优化数据库的操作。
9、可以数以千万计的记录在一个大的数据库。
2.2 B/S结构
B/S架构是一种基于互联网系统的软件系统开发架构,是现如今在软件系统开发中采用非常大量的一种软件系统结构。现如今B/S架构已经被大量使用,打破了C/S结构的结构,给基于网络结构的软件系统提供了良好的支持。B/S架构伴随着计算机网络技术发展而逐步的发展和更新。伴随着互联网的进一步发展,就要求大多数的管理系统要求不仅仅可以在一台电脑上使用,同时可以在接入互联网的其他电脑也可以使用对系统进行操作和使用。在这样的背景下基于B/S架构的软件系统设计方法得到了越来越大量的使用,基础部分也在不断的更新。
B/S架构是利用操作系统中的浏览器来进行使用的,不是一种窗体软件系统,不需要在使用系统的电脑上进行安装。B/S架构的运行方式是在远程的服务器上把开发的软件系统部署在远程的服务器上,在部署好软件系统之后就可以实现在任何接入互联网的电脑上访问部署好的软件系统。B/S架构给使用管理系统的用户带来极大的便利。
在三层体系结构的B/S(Browser/Server,浏览器/服务器结构)系统中,用户可以通过浏览器向分布在网络上的众多服务器发出请求。B/S系统极大地简化了客户机的工作量,客户机上只需要安装、配置少量的客户端运行软件即可,服务器将担负大量的工作,对数据库的访问以及应用程序的执行都将由服务器来完成。
B/S架构的不断成熟,主要使用WWW浏览器技术,结合多种浏览器脚本语言,用通用浏览器需要实现原本复杂的专有软件来实现的强大功能,并节约了开发成本,是一种新的软件架构。B/S系统包括:表示逻辑层,控制逻辑层,数据展现层,三层是相对独立又相互关联。
2.3 Spring Boot框架简介
Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。
SpringBoot可以与经典的Java开发工具一起使用或者作为命令行工具安装。无论如何,需要JavaSDK1.6或者更高版本,本项目用到的是JDK1.8版本。
4系统概要设计
4.1概述
本系统采用B/S结构(Browser/Server,浏览器/服务器结构)和基于Web服务两种模式,是一个适用于Internet环境下的模型结构。只要用户能连上Internet,便可以在任何时间、任何地点使用。系统工作原理图如图4-1所示:
在这里插入图片描述

图4-1系统工作原理图
4.2系统结构
本系统是基于B/S架构的网站系统,设计的功能结构图如下图所示:
在这里插入图片描述

图4-2功能结构图

4.3.数据库设计
4.3.1数据库实体
概念设计的目标是设计出反映某个组织部门信息需求的数据库系统概念模式,数据库系统的概念模式独立于数据库系统的逻辑结构、独立于数据库管理系统(DBMS)、独立于计算机系统。
概念模式的设计方法是在需求分析的基础上,用概念数据模型(例如E-R模型)表示数据及数据之间的相互联系,设计出反映用户信息需求和处理需求的数据库系统概念模式。概念设计的目标是准确描述应用领域的信息模式,支持用户的各种应用,这样既容易转换为数据库系统逻辑模式,又容易为用户理解。数据库系统概念模式是面向现实世界的数据模型,不能直接用于数据库系统的实现。在此阶段,用户可以参与和评价数据库系统的设计,从而有利于保证数据库系统的设计与用户的需求相吻合。在概念模式的设计中,E-R模型法是最常见的设计方法。本系统的E-R图如下图所示:
(1)管理员信息的实体属性图如下:
在这里插入图片描述

图4.12 管理员信息实体属性图
(2)科目类型信息实体属性图如图4.13所示:
在这里插入图片描述

图4.13 科目类型信息实体属性图
(3)校园资讯信息实体属性图如图4.14所示:
在这里插入图片描述

图4.14 校园资讯信息实体属性图
4.3.2数据库设计表
在线课程管理系统需要后台数据库,下面介绍数据库中的各个表的详细信息:

表4.1 班级分类
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
leixing varchar(200) 是 NULL 类型
表4.2 在线课程评论表
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
refid bigint(20) 否 关联表id
userid bigint(20) 否 用户id
nickname varchar(200) 是 NULL 用户名
content longtext 否 评论内容
reply longtext 是 NULL 回复内容
表4.3 在线交流
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
title varchar(200) 是 NULL 帖子标题
content longtext 否 帖子内容
parentid bigint(20) 是 NULL 父节点id
userid bigint(20) 否 用户id
username varchar(200) 是 NULL 用户名
isdone varchar(200) 是 NULL 状态
表4.4 教师用户
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
jiaoshigonghao varchar(200) 否 教师工号
mima varchar(200) 否 密码
jiaoshixingming varchar(200) 否 教师姓名
xingbie varchar(200) 是 NULL 性别
suojiaobanji varchar(200) 是 NULL 所教班级
suojiaokemu varchar(200) 是 NULL 所教科目
lianxidianhua varchar(200) 是 NULL 联系电话
shenfenzheng varchar(200) 是 NULL 身份证
表4.5 教学计划
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
kechengmingcheng varchar(200) 是 NULL 课程名称
kemuleixing varchar(200) 是 NULL 科目类型
jiaoxueneirong longtext 是 NULL 教学内容
jiaoxuemubiao longtext 是 NULL 教学目标
jiaoxuezhongdian longtext 是 NULL 教学重点
kechenganpai longtext 是 NULL 课程安排
jiaoshigonghao varchar(200) 是 NULL 教师工号
jiaoshixingming varchar(200) 是 NULL 教师姓名
表4.6 考试大纲
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
kechengmingcheng varchar(200) 是 NULL 课程名称
kemuleixing varchar(200) 是 NULL 科目类型
kaodianneirong longtext 是 NULL 考点内容
zhuyishixiang longtext 是 NULL 注意事项
kaodianfenxi longtext 是 NULL 考点分析
kechengtupian varchar(200) 是 NULL 课程图片
jiaoshigonghao varchar(200) 是 NULL 教师工号
jiaoshixingming varchar(200) 是 NULL 教师姓名
表4.7 课件信息
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
kechengmingcheng varchar(200) 是 NULL 课程名称
kemuleixing varchar(200) 是 NULL 科目类型
kejianmingcheng varchar(200) 是 NULL 课件名称
kejianneirong longtext 是 NULL 课件内容
kejianwenjian varchar(200) 是 NULL 课件文件
shangchuanriqi date 是 NULL 上传日期
kechengtupian varchar(200) 是 NULL 课程图片
jiaoshigonghao varchar(200) 是 NULL 教师工号
jiaoshixingming varchar(200) 是 NULL 教师姓名
表4.8 科目类型
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
leixing varchar(200) 是 NULL 类型
表4.9 校园资讯
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
title varchar(200) 否 标题
introduction longtext 是 NULL 简介
picture varchar(200) 否 图片
content longtext 否 内容
表4.10 收藏表
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
userid bigint(20) 否 用户id
refid bigint(20) 是 NULL 收藏id
tablename varchar(200) 是 NULL 表名
name varchar(200) 否 收藏名称
picture varchar(200) 否 收藏图片
表4.11 提问解答
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
kechengmingcheng varchar(200) 是 NULL 课程名称
kemuleixing varchar(200) 是 NULL 科目类型
tiwenneirong longtext 是 NULL 提问内容
tiwenjieda longtext 是 NULL 提问解答
jiedariqi date 是 NULL 解答日期
xuehao varchar(200) 是 NULL 学号
jiaoshigonghao varchar(200) 是 NULL 教师工号
jiaoshixingming varchar(200) 是 NULL 教师姓名
表4.12 通知公告
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
gonggaobiaoti varchar(200) 是 NULL 公告标题
gonggaoleixing varchar(200) 是 NULL 公告类型
gonggaoneirong longtext 是 NULL 公告内容
fabushijian date 是 NULL 发布时间
faburen varchar(200) 是 NULL 发布人
fengmian varchar(200) 是 NULL 封面
表4.13 管理员表
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
username varchar(100) 否 用户名
password varchar(100) 否 密码
role varchar(100) 是 管理员 角色
addtime timestamp 否 CURRENT_TIMESTAMP 新增时间
表4.14 我的课程
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
kechengmingcheng varchar(200) 是 NULL 课程名称
kemuleixing varchar(200) 是 NULL 科目类型
kechengjianjie longtext 是 NULL 课程简介
jiaoshixingming varchar(200) 是 NULL 教师姓名
kaikeshijian date 是 NULL 开课时间
jiekeshijian date 是 NULL 结课时间
beizhu varchar(200) 是 NULL 备注
xuehao varchar(200) 是 NULL 学号
xueshengxingming varchar(200) 是 NULL 学生姓名
表4.15 学生提问
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
kechengmingcheng varchar(200) 是 NULL 课程名称
kemuleixing varchar(200) 是 NULL 科目类型
tiwenneirong longtext 是 NULL 提问内容
tiwenriqi date 是 NULL 提问日期
jiaoshigonghao varchar(200) 是 NULL 教师工号
xuehao varchar(200) 是 NULL 学号
xueshengxingming varchar(200) 是 NULL 学生姓名
sfsh varchar(200) 是 否 是否审核
shhf longtext 是 NULL 审核回复
表4.16 学生用户
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
xuehao varchar(200) 否 学号
mima varchar(200) 否 密码
xueshengxingming varchar(200) 否 学生姓名
xingbie varchar(200) 是 NULL 性别
banji varchar(200) 是 NULL 班级
shouji varchar(200) 是 NULL 手机
shenfenzheng varchar(200) 是 NULL 身份证
表4.17 在线课程
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
kechengmingcheng varchar(200) 是 NULL 课程名称
kemuleixing varchar(200) 是 NULL 科目类型
kechengjianjie longtext 是 NULL 课程简介
kechengneirong longtext 是 NULL 课程内容
kechengshipin varchar(200) 是 NULL 课程视频
kaikeshijian date 是 NULL 开课时间
jiekeshijian date 是 NULL 结课时间
kechengtupian varchar(200) 是 NULL 课程图片
jiaoshigonghao varchar(200) 是 NULL 教师工号
jiaoshixingming varchar(200) 是 NULL 教师姓名
userid bigint(20) 是 NULL 用户id
表4.18 知识要点
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
kechengmingcheng varchar(200) 是 NULL 课程名称
kemuleixing varchar(200) 是 NULL 科目类型
zhishidianmingcheng varchar(200) 是 NULL 知识点名称
zhishidianneirong longtext 是 NULL 知识点内容
zhishidianjiexi longtext 是 NULL 知识点解析
kechengtupian varchar(200) 是 NULL 课程图片
faburiqi date 是 NULL 发布日期
jiaoshigonghao varchar(200) 是 NULL 教师工号
jiaoshixingming varchar(200) 是 NULL 教师姓名


http://www.kler.cn/a/410794.html

相关文章:

  • 【Zookeeper 和 Kafka】为什么 Zookeeper 不用域名?
  • Apache Maven Assembly 插件简介
  • 【前端】ES6基础
  • Spring源码(十三):Spring全系列总结
  • 周志华深度森林deep forest(deep-forest)最新可安装教程,仅需在pycharm中完成,超简单安装教程
  • android 性能分析工具(03)Android Studio Profiler及常见性能图表解读
  • wordpress获取文章总数、分类总数、tag总数等
  • 解决 Android 单元测试 No tests found for given includes:
  • 【运维】 使用 shell 脚本实现类似 jumpserver 效果实现远程登录linux 服务器
  • Android数据存储——文件存储、SharedPreferences、SQLite、Litepal
  • sklearn学习
  • Golang 调用 mongodb 的函数
  • C++定义函数指针变量作为形参
  • JS的DOM操作和事件监听综合练习 (具备三种功能的轮播图案例)
  • 【MySQL】MySQL从入门到放弃
  • 一款开源在线项目任务管理工具
  • 后端并发编程操作简述 Java高并发程序设计 六类并发容器 七种线程池 四种阻塞队列
  • DM8 Docker环境部署
  • 贪心算法-区间问题 C++
  • 2025职业院校技能大赛信息安全管理与评估(河北省) 任务书
  • 即时通讯服务器被ddos攻击了怎么办?
  • php操作redis
  • 在线客服系统的设计与实现(SpringBoot JPA freemarker MYSQL)
  • L14.【LeetCode笔记】返回倒数第k个节点
  • 《AliCoCo: Alibaba E-commerce Cognitive Concept Net》中文校对版
  • 5分钟上手!用 #Workspace 为 screenshot-to-code 项目增加新功能