jsp mysql实验选课系统下载_课内资源 - 基于jsp与mysql的选课系统

2023-11-11 10:50

本文主要是介绍jsp mysql实验选课系统下载_课内资源 - 基于jsp与mysql的选课系统,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、需求说明(Jsp动态网站应用)网站的使用者:某学校的学生,老师和管理员使用

网站的主要目的: 用于学生选课,以及老师和学生之间的交流。

网站的功能(根据不同的使用者设定的权限)

使用者

权限

学生

选择课程 /退出课程(在有效的退出时间内) /修改个人信息(除学号) / 查看个人成绩

老师

创建,查看和修改课程信息 /删除课程/从课程里增加和删除学生/ 给选课的学生成绩

管理员

创建用户(学生,老师,管理员) / 查看,修改用户个人信息 / 删除用户 / 删除留言簿的信息

学生,老师,管理员

改变自己的登陆密码 / 查看个人信息 / 进入留言簿

二、系统实现说明

2.1 数据库设计说明

fbaf41f84bb5eaa8720831543ab20b9e.png

数据库名是:JoyStudy。

userTB 是存放用户信息的

属性说明:

uID :该表的主键。是一个自动增加的int 型数据。

userName :是用户名。就是登录,标示用户一个标示。(其实这样说,别不准确,里面大多数是靠主键 uID 来唯一标示的。)

password :是存储用户的密码。(不过没有经过处理的原始数据,很不符号实际应用。)

realName : 是存储用户的实际姓名。这个只是我模仿其他的一个属性。

Email、sex :就是存储的用户Email 和 sex。

特别指出一点:

属性:type是代表用户的类型!

1 代表管理员

2 代表老师

3 代表学生

courseTB 存放课程信息

属性说明:

csID 是主键, 是一个自动增加的int 型数据。

csTeacher是引用userTB主键uID的外键

messageTB 存放留言信息。

mgID 是主键, 是一个自动增加的int 型数据。

userID是引用userTB主键uID的外键。

courseID是引用courseTB主键csID的外键。

mgTitle、mgContent 分别存放留言的标题和内容。

注:这里需要说明一下,这里的逻辑:userID 是存放的留言者的uID,courseID是存放的本条留言所针对的课程。就是说一条留言针对一个课程!或者说,只能针对某科课程发布留言!

enrollmentTB 是存放选课信息的表。 enID 是主键, 是一个自动增加的int 型数据。

enUserID是引用userTB主键uID的外键。即选课的学生。

enCourseID是引用至courseTB主键csID的外键。

enGrade 存放成绩。

注:JoyStudy文件夹下面的“joystudy.mer”是从MyEclipse里面导出来的数据库ER视图。但是在Eclipse中不能正常显示。所以有截了个图:“JoyStudy_DB_ER.jpg”(也就是上图所示)。

2.2 网页文件说明

网站的唯一入口是 index.jsp 。

所有用户的密码是:123。

三类典型用户的用户名分别是:

1,管理员:adai

2,老师: teacher

3,学生:student

网页文件的命名都是“见文知意”。另外,文件我是按“权限”分类的,(公共的就放到顶层文件夹下。管理员用到的就放到“admin”文件夹下。依次类推。)就不过多解释了!

2.3 备注

文件夹databaseSQL中放的是SQL脚本文件。(请用记事本打开,在Eclipse中打开是乱码!)我是用MySQL的一个图形界面工具(Navicat 8 for MySQL)导出的!我在我电脑上面换了个数据库名实验了一下可以!不知在其他机器上是否可以!

这篇关于jsp mysql实验选课系统下载_课内资源 - 基于jsp与mysql的选课系统的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/389519

相关文章

MySQL MCP 服务器安装配置最佳实践

《MySQLMCP服务器安装配置最佳实践》本文介绍MySQLMCP服务器的安装配置方法,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下... 目录mysql MCP 服务器安装配置指南简介功能特点安装方法数据库配置使用MCP Inspector进行调试开发指

mysql中insert into的基本用法和一些示例

《mysql中insertinto的基本用法和一些示例》INSERTINTO用于向MySQL表插入新行,支持单行/多行及部分列插入,下面给大家介绍mysql中insertinto的基本用法和一些示例... 目录基本语法插入单行数据插入多行数据插入部分列的数据插入默认值注意事项在mysql中,INSERT I

一文详解MySQL如何设置自动备份任务

《一文详解MySQL如何设置自动备份任务》设置自动备份任务可以确保你的数据库定期备份,防止数据丢失,下面我们就来详细介绍一下如何使用Bash脚本和Cron任务在Linux系统上设置MySQL数据库的自... 目录1. 编写备份脚本1.1 创建并编辑备份脚本1.2 给予脚本执行权限2. 设置 Cron 任务2

SQL Server修改数据库名及物理数据文件名操作步骤

《SQLServer修改数据库名及物理数据文件名操作步骤》在SQLServer中重命名数据库是一个常见的操作,但需要确保用户具有足够的权限来执行此操作,:本文主要介绍SQLServer修改数据... 目录一、背景介绍二、操作步骤2.1 设置为单用户模式(断开连接)2.2 修改数据库名称2.3 查找逻辑文件名

C++中RAII资源获取即初始化

《C++中RAII资源获取即初始化》RAII通过构造/析构自动管理资源生命周期,确保安全释放,本文就来介绍一下C++中的RAII技术及其应用,具有一定的参考价值,感兴趣的可以了解一下... 目录一、核心原理与机制二、标准库中的RAII实现三、自定义RAII类设计原则四、常见应用场景1. 内存管理2. 文件操

SQL Server数据库死锁处理超详细攻略

《SQLServer数据库死锁处理超详细攻略》SQLServer作为主流数据库管理系统,在高并发场景下可能面临死锁问题,影响系统性能和稳定性,这篇文章主要给大家介绍了关于SQLServer数据库死... 目录一、引言二、查询 Sqlserver 中造成死锁的 SPID三、用内置函数查询执行信息1. sp_w

Python pip下载包及所有依赖到指定文件夹的步骤说明

《Pythonpip下载包及所有依赖到指定文件夹的步骤说明》为了方便开发和部署,我们常常需要将Python项目所依赖的第三方包导出到本地文件夹中,:本文主要介绍Pythonpip下载包及所有依... 目录步骤说明命令格式示例参数说明离线安装方法注意事项总结要使用pip下载包及其所有依赖到指定文件夹,请按照以

canal实现mysql数据同步的详细过程

《canal实现mysql数据同步的详细过程》:本文主要介绍canal实现mysql数据同步的详细过程,本文通过实例图文相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的... 目录1、canal下载2、mysql同步用户创建和授权3、canal admin安装和启动4、canal

SQL中JOIN操作的条件使用总结与实践

《SQL中JOIN操作的条件使用总结与实践》在SQL查询中,JOIN操作是多表关联的核心工具,本文将从原理,场景和最佳实践三个方面总结JOIN条件的使用规则,希望可以帮助开发者精准控制查询逻辑... 目录一、ON与WHERE的本质区别二、场景化条件使用规则三、最佳实践建议1.优先使用ON条件2.WHERE用

MySQL存储过程之循环遍历查询的结果集详解

《MySQL存储过程之循环遍历查询的结果集详解》:本文主要介绍MySQL存储过程之循环遍历查询的结果集,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录前言1. 表结构2. 存储过程3. 关于存储过程的SQL补充总结前言近来碰到这样一个问题:在生产上导入的数据发现