mysql -ss -e_课内资源 - 基于ssm框架和mysql的网上选课系统

本文介绍了基于SSM框架和MySQL数据库设计的网上选课系统,涵盖了需求分析、系统模块设计、数据库设计、详细设计及编码实现。系统分为学生和教师部分,提供登录、个人资料管理、网上选课、课程筛选等功能,同时具备课程管理和教师评分功能。采用Spring、SpringMVC、Mybatis框架,前端使用layui、bootstrap和jquery,数据库为MySQL 5.7.18。
摘要由CSDN通过智能技术生成

一、需求分析

1.1 业务需求

随着社会的发展,学生的人数和课程种类急速增加,传统的选课管理模式已经无法满足当前的实际需求,为此我们开发了学生选课管理系统。本人结合学生选课管理的实际需要,完成了对学生选课管理系统的需求分析功能模块划分、数据库模式分析等,并由此设计了后台数据库以及前台应用程序。

文中首先对课题背景,数据库基础理论和SQL语言进行了简单的叙述,然后对系统前台开发工具IDEA进行了详细的分析设计,划分具体的功能模块。

学生选课管理系统分为学生部分和教师部分。可以实现基本的增删改查的基本操作,还可以实现如根据教师姓名进行筛选选课、教师对自己所开课程进行评分等操作。

1.2 业务环境

本系统主要面向用户是学生和教师。教师进行选课信息、自己的课程安排查看以及学生信息的管理。学生主要进行个人信息管理、查询教师开课情况以及进行选课。

a54956b8aa620b5b6a37dbf99e8189c9.png

二、系统分析与设计

2.1 系统的模块分析与设计

把网上选课系统划分为以下三个模块:用户登录模块、个人资料模块、网上选课模块。用户登录模块用于对用户的登录进行检查,个人资料模块显示个人的资料并且能够更改密码,网上选课模块为主要模块,可以选择自己的课程查看已经选择的课程。

ae004d88d4edeaf388360ec5a2ab872e.png

2.2 类图

网上学生选课系统主要实现了十六个类,分别是Page、PageServiceimpl、LoginController、StudentController、TeacherController、Course、Course_choose、Course_limit、Institution、Student、Teacher、User、CourseServiceImpl、UserServiceImpl。其中Page类进行页面的管理,PageServiceimpl类设置页面的显示,Student、Teacher、User类用来获取用户的信息,LoginController类控制用户登录的信息,StudentController类显示控制学生的信息管理, TeacherController类对学生的信息进行管理,Course、Course_choose、Course_limit类用来进行课程的选择,限定和课程信息管理,CourseServiceImpl类用来对课程的服务信息管理,UserServiceImpl类用来对用户的的各类信息管理,OrderManage类用来管理用户的订单的信息,ShopMange用来管理商家店铺的信息。

网上学生选课系统的类图如图所示。

6d8aa5b01bf7a8ee75fbd2b230b56f4f.png

2.3 数据库的分析与设计

2.3.1 表与表之间的关系图

通过对系统进行需求分析、网站流程设计以及系统功能结构的确定,规划出系统中使用的实体对象分别为学生、课程选择、教师、学院、课程、选择课程限制。

2ba3c84725dfa3abc1412a5c0621322f.png

学生信息E-R图

学生信息包括学号、姓名、学生密码、学院ID、学院名称。管理员信息实体E-R图如图所示。

8673fd6c1ab7da55301483e910f44ff1.png

选课信息E-R图

选课信息包括选课ID、学生ID、班级ID、分数 选课信息实体E-R图如图所示。

0e2a4f47f768057e82da16d86960a061.png

课程信息E-R图

课程信息包括课程ID、课程名称、班级号、教师ID、班级选择号 课程信息实体E-R图如图所示。

132f9f13f4d02ce06ef81e64a86f8d2e.png

学院信息E-R图

学院信息包括学院ID、学院名称 学院信息实体E-R图如图所示。

33c2aa714d3e75288fb2b9d85aa77cee.png

教师信息E-R图

教师信息包括教师ID、教师名称 教师信息实体E-R图如图所示。

a67a8e22c39ba6b38d0fce9d119175ec.png

课程限制E-R图

课程限制包括限定ID、班级ID 学院ID实体E-R图如图所示。

a6f47168e95eecc143386a9690a87650.png

2.3.2 数据库的表设计

学生表的设计及信息查看

4d7fd0d9a84c72e3dfaf1893c52ad6cc.png

选课表的设计及信息查看

840e5e2a3c4e737548e654672aeb0c4e.png

课程的设计及信息查看

7a5b12d5857ca2537037d5236f0f8012.png

学院表的设计

bb8c4afe65361ccf4f1abb5e5e040c66.png

教师表的设计

8d7d386e463eda276c16cf10a45f4c51.png

课程限定表的设计

4de1ae21c3f95b8e55c4baf5537ea28f.png

三、详细设计

3.1 登陆

用户根据账号与密码登陆,系统根据账号来区分学生和教师身份,判断是否为教师还是学生来登入不同系统管理。首次登入为初始账号和密码,可以进行密码修改来确保账号的安全。

34e62baf8fd30801065a84fb6a45b27f.png

3.2 个人资料

根据登陆系统的账户去数据库中匹配查询所属信息,通过response来获取响应数据并通过提交表单来进行页面显示。若想更改账号密码,可通过点击页面内修改密码来对密码进行更新操作。

071ee6b85bc64bd58a207f215c9a4ec4.png

3.3 筛选功能

根据教师名称、学院名称到数据库中进行关键字匹配相应信息,通过选取教师姓名筛选可以获取到指定老师所教授的课程,并可以查询到该老师的课程编号、课程名称、教师名称、人数限制、已选人数、学院限制;按照学院名称来筛选可以把指定学院限制的课程显示出

f97ce4b6e249e4285780d4fb249a951d.png

3.4 选课功能

学生通过登陆系统可以根据筛选信息来查询选课信息,在选择课程时存在学院限制和人数限制,根据学生所处学院来进行限制,选课时只能选取同学院课程。当课程人数已经达到人数限制时,学生同样不可继续选取。对于已选课程可以进行退选操作,避免操作失误的处理。学生可以在我的选课里对于自己所选取的课程进行编辑和成绩的查询。

4c7fbdf8561d1fff3f9e57f13bda8ff1.png

3.5 课程管理

老师通过特殊账号登陆选课系统进入课程管理,同样存在个人资料的查询和密码的修改;老师可以对自己所教授的课程进行管理,进行课程的增加、删除、权限的修改以及对于选择该课程的同学进行评分和剔除。

5ec9bb2d26fd5d77968dc042069aaf03.png

四、编码实现和测试

配置DispatcherServlet实现分发请求:

SpringMVC

org.springframework.web.servlet.DispatcherServlet

contextConfigLocation

classpath:spring-*.xml

1

true

SpringMVC

/

定义数据库连接池:

jdbc.driver=com.mysql.jdbc.Driver

#数据库地址

jdbc.url=jdbc:mysql://localhost:3306/Course_Selection_System?useUnicode=true&characterEncoding=utf8

#用户名

jdbc.username=root

#密码

jdbc.password=123

SpringMVC相关配置信息:

测试结果

个人信息

cfe86e1a1fe7da522c8eeef9860cb5ec.png

课程信息

b51c677f769c5ff107e78369207cb88e.png

课程管理

e844d01a8d2f5404da7e79e75a1bdf53.png

五、课程设计成果

5.1 部署Tomcat

把文件导入IntelliJ IDEA

98f95794692992142b15cba65b8ef5cb.png

导入成功后点击运行按钮即可

d30ccb4cd2e35a7eb961393cc2e9b3f2.png

5.2 系统的软硬件需求开发环境

后台基于maven使用SSM框架整合(Spring、SpringMVC、Mybatis)

前端jsp页面样式基于layui框架,bootstrap和jquery

ide:Intellij IDEA 2017.2.4

java版本:jdk1.8.0_152

数据库版本:mysql 5.7.18-1

服务器 硬件 处理器:Intel PII或者更好

内存:256M以上

硬盘:20G以上

5.3 系统的功能使用介绍

5.3.1 登录功能

对用户的账号密码检查,如果成功就让用户进入选课界面,否则提示用户登录失败。

714667f39d089f8d1b8ba583f963736b.png

5.3.2 个人资料功能

当用户点击这个时可以查看用户的个人信息,也可以对用户的密码进行修改。

5d25152d9319fa05a89496acb72111e8.png

5.3.3 选课功能

选课功能模块分为两种一种是我的选课查看用户已选课程的信息和退课,第二种是排课信息,进行选课。

955ad3aed4dac776bedbfa65bc83e711.png

a9487344dbe17d7a3beb714f888931f5.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值