基于JAVA的学生课程后台管理系统【数据库设计、源码、开题报告】

news2025/4/19 12:44:00

数据库脚本下载地址: https://download.csdn.net/download/itrjxxs_com/86427641

开学选好课是具备学术能力的首要表现。学生不能为了拿高分,只选简单课程,也没有必要为了显示出自己热衷自我挑战,奋不顾身地一头扎进高难度课程。在选课策略中,我们要分必修课程和可选课程去考虑,在保证必修课程完成度后,再结合自己的兴趣、天赋、能力和风险回报去筛选出合适的可选课程。

合理的选课布局能事半功倍,学生可根据以下选课逻辑去反复思考!

哪些课程是必修的先决课程,哪些是可选课程?

哪些课程与兴趣一致?能很好突出申请形象?

课程是否具备一定的挑战难度,并能突显你在某领域的天赋和优势?

结合自己的实际学术能力,权衡课程的风险与回报.

主要使用技术

Spring+SpringMVC+Mybatis+LayUI+Jquery+Mysql

功能介绍

本系统主要分三个用户:学生、教师、管理员;
登录注册:填写用户相关信息;
权限申请:普通用户申请教师职位权限,由管理员审核;
申请管理:显示所有权限申请记录,执行审核操作;
教师课程管理:对课程进行开课结课操作,开课由管理员审核,老师结课后可对每一位学生进行打分;
学生课程管理:查看可选修课程并报名,查看以选修的课程以及结课科目的分数;
会员管理:管理员可对平台用户进行增删改查;

数据库脚本

DROP TABLE IF EXISTS `audit`;

CREATE TABLE `audit` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `remake` varchar(255) CHARACTER SET utf8 DEFAULT NULL,
  `senderName` varchar(255) CHARACTER SET utf8 DEFAULT NULL,
  `errorRemake` varchar(255) DEFAULT NULL,
  `status` int(11) DEFAULT NULL,
  `audittype` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=27 DEFAULT CHARSET=utf16 ROW_FORMAT=DYNAMIC;

DROP TABLE IF EXISTS `auditinfo`;

CREATE TABLE `auditinfo` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `auditid` int(11) DEFAULT NULL,
  `courseid` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC;

DROP TABLE IF EXISTS `auditstatus`;

CREATE TABLE `auditstatus` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `auditStatus` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC;

DROP TABLE IF EXISTS `audittype`;

CREATE TABLE `audittype` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `audittype` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC;

DROP TABLE IF EXISTS `course`;

CREATE TABLE `course` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `courseName` varchar(255) CHARACTER SET utf8 DEFAULT NULL,
  `courseRemake` varchar(255) CHARACTER SET utf8 DEFAULT NULL,
  `teacherid` int(11) DEFAULT NULL,
  `maxSum` int(11) DEFAULT '20',
  `realsum` int(11) DEFAULT '0',
  `statusid` int(11) DEFAULT NULL,
  `startDate` varchar(255) CHARACTER SET utf8 DEFAULT NULL,
  `endDate` varchar(255) CHARACTER SET utf8 DEFAULT NULL,
  `coursetype` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=19 DEFAULT CHARSET=utf16 ROW_FORMAT=DYNAMIC;

DROP TABLE IF EXISTS `courseinfo`;

CREATE TABLE `courseinfo` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `courseid` int(11) DEFAULT NULL,
  `stuid` int(11) DEFAULT NULL,
  `credit` double DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=utf16 ROW_FORMAT=DYNAMIC;

DROP TABLE IF EXISTS `logininfo`;

CREATE TABLE `logininfo` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(255) CHARACTER SET utf8 DEFAULT NULL,
  `password` varchar(255) CHARACTER SET utf8 DEFAULT NULL,
  `nickname` varchar(255) DEFAULT NULL,
  `powerid` int(11) DEFAULT '3',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=45 DEFAULT CHARSET=utf16 ROW_FORMAT=DYNAMIC;

DROP TABLE IF EXISTS `power`;

CREATE TABLE `power` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `powerName` varchar(255) CHARACTER SET utf8 NOT NULL,
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf16 ROW_FORMAT=DYNAMIC;

DROP TABLE IF EXISTS `profession`;

CREATE TABLE `profession` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `teacherType` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC;

DROP TABLE IF EXISTS `status`;

CREATE TABLE `status` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `statusName` varchar(255) CHARACTER SET utf8 DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf16 ROW_FORMAT=DYNAMIC;

DROP TABLE IF EXISTS `student`;

CREATE TABLE `student` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `stuName` varchar(255) CHARACTER SET utf8 DEFAULT NULL,
  `stuphone` varchar(255) CHARACTER SET utf8 DEFAULT '17321555501',
  `age` int(11) DEFAULT NULL,
  `username` varchar(255) DEFAULT NULL,
  `sex` varchar(255) CHARACTER SET utf8 DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=36 DEFAULT CHARSET=utf16 ROW_FORMAT=DYNAMIC;


DROP TABLE IF EXISTS `teacher`;

CREATE TABLE `teacher` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `teacherName` varchar(255) CHARACTER SET utf8 NOT NULL,
  `courseSum` int(11) DEFAULT '0',
  `teacherPhone` varchar(255) CHARACTER SET utf8 DEFAULT NULL,
  `username` varchar(255) CHARACTER SET utf8 DEFAULT NULL,
  `remake` varchar(255) CHARACTER SET utf8 DEFAULT NULL,
  `age` int(11) DEFAULT NULL,
  `profession` int(11) DEFAULT NULL,
  `sex` varchar(255) CHARACTER SET utf8 DEFAULT NULL,
  `status` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf16 ROW_FORMAT=DYNAMIC;
DROP TABLE IF EXISTS `teacherstatus`;
CREATE TABLE `teacherstatus` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `status` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC;

项目截图

在这里插入图片描述

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

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

相关文章

强化深度学习中利用时序差分法中的Sarsa算法解决风险投资问题实战(附源码 超详细必看)

需要源码请点赞关注收藏后评论区留下QQ~~~ 一、Sarsa算法简介 Sarsa算法每次更新都需要获取五元组(S,A,R,S,A)这也是该算法称为Sarsa的原因,每当从非终止状态进行一次转移后,就进行一次更新,但需要注意的是&#xff0…

【论文阅读】社交网络传播最大化问题-04

Efficient Influence Maximization in Social Networks相关工作改进的贪心算法对独立级联模型的改进对加权级联模型的改进改进度折扣算法影响力最大化:在社交网络中找到一小部分能够最大化传播影响力的节点(种子节点)。一是改进原有的贪心算法,进一步缩短…

KMP算法——通俗易懂讲好KMP算法:实例图解分析+详细代码注解

文章目录1.kmp算法基本介绍2.字符串的最长公共前后缀&部分匹配表2.1 什么是最长公共前后缀2.2 什么是部分匹配表Next2.3 字符串最长公共前后缀&部分匹配表的代码实现2.4 代码测试3.根据部分匹配表搜索字符串匹配位置3.1 匹配成功一个就退出匹配的代码3.1.1 KMP算法的大…

Vue父组件给子组件传参数

别人在调用我们写的组件时,虽然要实现的结构一样,但如果别人想改一下显示的内容或者之类的,该怎么做呢;这时候就要提到“传参数”这个词了,别人可以通过传不同的参数,来实现他们具体的结构; 传参…

SpringBoot SpringBoot 开发实用篇 5 整合第三方技术 5.22 RabbitMQ 安装

SpringBoot 【黑马程序员SpringBoot2全套视频教程,springboot零基础到项目实战(spring boot2完整版)】 SpringBoot 开发实用篇 文章目录SpringBootSpringBoot 开发实用篇5 整合第三方技术5.22 RabbitMQ 安装5.22.1 Erlang下载5.22.2 安装5.…

HTML+CSS期末大作业 中国传统美食网站设计 节日美食13页 html5网页设计作业代码 html制作网页案例代码 html大作业网页代码

🎀 精彩专栏推荐👇🏻👇🏻👇🏻 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业…

3招学会TikTok电商选品,速看

Sensor Tower商店情报数据显示,2022年10月Instagram以将近6700万下载量,成为全球移动应用(非游戏)下载榜冠军,较2021年10月增长17.2%。其中,印度市场的下载量占45.2%,美国市场的下载量占比为5.4…

《码出高效:Java开发手册》笔记之二-面向对象

前言 第二章主要是讲面向对象,也就是oop,这个概念其实很多人已经听腻了,都是非常基础的知识,本章就是讲一些java以及很多编程语言的基础设计思想 正文 oop理念 面向对象是在早期滥用面向过程编程后出现的,面向过程…

CSS清除浮动的五种方法(超详细)

1.为什么要清除浮动? 浮动的原理是让图片脱离文档流,直接浮在桌面上。我们一般布局的时候都是只设置宽度不设置高度,让内容来自动填充高度。但使用浮动后会让原本填充的高度消失,父元素高度为0,后续添加内容布局会产生混乱,造成…

C语言tips-数组指针和指针数组

最近因为工作需要开始重新学c语言,越学越发现c语言深不可测,当初用python轻轻松松处理的一些数据,但是c语言写起来却异常的复杂,这个板块就记录一下我的c语言复习之路 数组指针 概念:顾名思义就是一个指针,…

英特尔oneAPI-用于异构计算的英特尔oneAPI

文章目录前景解决方案CUDA替代方案OpenMPOpenACCC 库Python 和 JavaSYCL 和 oneAPI结论如今,异构性广泛存在于高性能计算和消费电子产品中。这些系统在传统 CPU 的基础上增加了大量协处理器或加速器,例如 GPU、TPU 和 FPGA。然而,没有一种简单…

梯度下降——机器学习

一、实验内容 掌握基于密度的聚类方法的基本思想;掌握单变量函数的梯度下降的原理、算法及python实现;掌握双变量函数的梯度下降的原理、算法及python实现,并测试分析;理解学习率η的选择并测试分析。 二、实验过程 1、算法思想 在…

状态估计|基于 MMSE 的分析估计器的不确定电力系统分析(Matlab代码实现)

一、概述 在分布式电网系统中部署可再生资源带来了一系列新挑战,主要是由于它们的可变性和对气候参数的依赖性,这可能对测量潮流和状态估计所需的系统参数产生重大影响。第一个旨在根据某些参数的先验知识(或预测)计算整个系统参…

从头开始进行CUDA编程:流和事件

前两篇文章我们介绍了如何使用GPU编程执行简单的任务,比如令人难以理解的并行任务、使用共享内存归并(reduce)和设备函数。为了提高我们的并行处理能力,本文介绍CUDA事件和如何使用它们。但是在深入研究之前,我们将首先…

C++【智能指针】

文章目录一、什么是智能指针RAII思想std::auto_ptr二、智能指针的拷贝问题&#xff08;C98&#xff09;1.unique_ptr2.shared_ptrshared_ptr的问题循环引用的问题3.weak_ptr内存泄漏的危害一、什么是智能指针 #include<iostream>using namespace std; int div() {int a,…

哈希散列表hlist_head - linux内核经典实例

hlist_head和hlist_node用于散列表&#xff0c;分别表示列表头&#xff08;数组中的一项&#xff09;和列表头所在双向链表中的某项&#xff0c;两者结构如下: include/linux/types.h(line 190) struct hlist_head {struct hlist_node *first; };struct hlist_node {struct h…

护眼灯真的可以保护眼睛吗?2022双十二选哪款护眼灯对孩子眼睛好

传统的台灯只是单一色光&#xff0c;无法调节台灯的照度和色温&#xff0c;长时间使用不但不可以护眼&#xff0c;而且还会导致近视、散光等各种问题的发生。现在的护眼台灯大多都是使用led灯珠作为发光源&#xff0c;不但本身比较高效节能&#xff0c;而且光线可调控&#xff…

react--redux

此篇文章非学习使用&#xff0c;学习勿入 redux 文档&#xff1a; http://www.redux.org.cn 用于做状态管理的js库 集中管理react中多个组件共享的状态 安装&#xff1a; cnpm i redux 给形参赋值&#xff0c;表示形参的默认值 错误&#xff1a; 对象不能作为一个dom元素…

NPDP认证|制造业产品经理日常工作必备技能,快来学习提升吧!

不同阶段的产品经理对技能的掌握程度要求不同&#xff0c;侧重点也不同&#xff0c;一般包括需求分析、数据分析、竞品分析、商业分析、行业分析、需求收集、产品设计、版本管理、用户调研等。这些技能&#xff0c;是我们必须要掌握的专业技能。 比如&#xff1a;对于刚入行的…

异常检测算法分类总结(含常用开源数据集)

作者&#xff1a;云智慧算法工程师 Chris Hu 异常检测是识别与正常数据不同的数据&#xff0c;与预期行为差异大的数据。本文详细介绍了异常检测的应用领域以及总结梳理了异常检测的算法模型分类。文章最后更是介绍了常用的异常算法数据集。 异常的概念与类型 目前异常检测主…