JSPM学生选课系统的设计与实现
摘要:随着互联网技术和国内教育行业持续高速地发展,管理员为了能够更加方便地管理学生网上选课,网上选课系统被开发出来的目的是为了能够更加方便管理学生网上选课,一个良好的网上选课系统成为很多学校的目标。
本系统采用SSM框架和JSP技术开发实现了网上选课系统,这会具有良好的扩展性。该网上选课系统使用了编程语言Java开发实现系统和数据库MySQL存储系统中产生的数据,最终实现了较为完整的系统。用户通过在浏览器输入网址就可以访问网上选课系统,管理员在后台管理界面上能够对系统的数据进行管理,因此用户和管理员能够较为方便操作系统。论文全面介绍了系统的功能设计、业务流程设计和需求分析。
关键词:选手选课;JSP;MySQL
Design and Implementation of
Student Course Selection System Base on JSPM
Abstract: With the continuous and rapid development of Internet technology and domestic education industry, in order to manage students' online course selection more conveniently, the purpose of online course selection system is to manage students' online course selection more conveniently. A good online course selection system has become the goal of many schools.
The system adopts SSM framework and JSP technology to develop and realize the online course selection system, which will have good expansibility. The online course selection system uses the programming language java to develop and realize the data generated in the system and the database mysql storage system, and finally realizes a relatively complete system. Users can access the online course selection system by entering the website in the browser. The administrator can manage the data of the system on the background management interface, so users and administrators can operate the system more conveniently. This paper comprehensively introduces the function design, business process design and demand analysis of the system.
Keywords: Contestant Course Selection;JSP;MySQL
1 绪论
1.1 课程信息研究背景和意义
网上选课系统为一个能够通过处理信息的库系统,通过利用编程语言封装好的库函数能够编码实现网上选课系统,这样有助于提高程序开发者的编程效率,降低网上选课系统的开发成本,互联网行业的迅速发展已经为网上选课系统发展奠定了基础[1]。管理员的手工服务已经不能够满足现在用户的需求。随着互联网行业的快速发展,高校需要突破传统的模式,网上选课系统通过利用计算机技术和联系用户的需求,提供信息化的服务,这有助于简化网上选课系统并提高其安全性。由于大数据时代的来临,信息系统的数据存储量相比于之前要大得多。在互联网时代有必要开发一套操作操作简单和数据存储安全的系统[2],这样不仅可以方便用户使用系统且管理员能够管理系统的信息。
二十一世纪是互联网时代,由于在数据管理方面数据量不少,因此管理员需要对大量的数据进行管理,所以人们可以利用计算机开发出相应的管理系统对数据进行管理。计算机的好处之一包括自动化处理,因此如果数据采用计算机处理的话,这无疑会提高系统的效率和安全性。如果管理员需要处理的数据越复杂的话越能够体现出利用计算机处理数据的优势。在刚开始的时候管理员对于信息处理的方式通常采用的是手工处理,但是数据量众多还使用人工的方式进行处理的话会导致很多问题的发生,例如数据丢失和管理员工作效率低下[3]。
1.2 国内外现状分析
网上选课系统始于二十世纪,经过了多年的发展,发展得相对完善,基本可以实现计算机对网上选课系统的数据进行管理。到了现今网上选课系统有了很大的变化,我国网上选课系统发展速度快了非常多,当时推出了在国内影响较大的自动化处理系统,自动化系统能够体现出社会分工的不同,使得网上选课系统的管理员能够专注于系统质量的提高。在这之前呢,网上选课系统发展速度相对来说比较慢,无论是技术还是理论研究上都没有很大的突破。国外发展网上选课系统的速度要明显快于我国,当时的网上选课系统由大型科技公司开发,网上选课系统因此由单一变为集成的系统。更加新型的网上选课系统虽然还没有出现,但是随着互联网行业的发展,人们有了新的需求,因此有良好的和数据库可以使得管理员的工作效率有所提高[4]。
1.3 课程信息研究主要内容
(1)本次针对网上选课系统提出实现方案,按照软件开发的一般流程进行前期的调研和分析确定软件是否能够正常实现、技术是否可行和系统功能模块的设计开发,最后确定了使用的技术和实现系统的方案。
(2)框架属于一种程序开发者实现的功能集合,可以帮助软件开发者快速构建软件层次架构和复用功能的一款工具,本平台框架使用了开源框架,具有比较好的开发优势,可以帮助软件开发者快速构建基本的程序开发框架出来,通过调用开源框架开源帮助程序开发者减少开发难度,提升了网上选课系统的安全和稳定性,能够帮助程序开发者完成系统功能模块的开发和数据的处理。
(3)管理员操作和管理学生网上选课管理系统的数据不仅需要框架规范约束还需要满足一定基础的标准,使用MySQL数据库中的约束关系能够根据系统中实体的关系从而生成数据库表,这样在实现系统的时候可以设置系统实体之间的关系。通过上面所说的流程能够形成最终的软件,网上选课系统中的每个功能部分属于不同的层级,这有助于满足不同的功能模块,这些功能模块互相作用,推动软件的实现。
2 相关背景技术
2.1 SSM框架的优势
SSM框架里的子框架都属于开源框架,开源框架具有非常多的好处,例如程序员可以在其基础之上二次开发,而且不用考虑费用的多少,省去了很大的一笔开支。其次,SSM框架具有优越的性能能够为程序开发者开发Web程序带来很大的便利,能够更好地开发出软件。
2.2 SpringMVC框架的优势
SpringMVC框架相比于Structs框架具有的优点包括:
(1)Structs拦截级别是类的拦截,而SpringMVC的拦截是在方法级别,因此相对于Structs框架更容易实现Restful风格。
(2)Structs框架设计模式采用的是多例的形式,类属性需要设置为方法共享,SpringMVC采用的设计模式则是单例的形式,不用每次都去创建和销毁对象,所以速度来说要相对更快些。
(3)Structs框架的控制器采用Filter进行实现,而SpringMVC核心控制器则为Servlet,Servlet处理业务流程要比Filter相对简单和效率更高。
(4)SpringMVC框架无论是项目管理还是安全性都要比Structs来得更好,配置文件相比起来也是少了很多。
2.3 MyBatis框架的优势
Hibernate能够把数据库中的数据封装好了以后,自动生成SQL语句,但是在应对数据库表字段改变的时候会比较麻烦并且SQL语句不能够优化。
(1)MyBatis框架的SQL语句需要开发者手动编写,可以适当地减少查询操作以提高系统的性能。
(2)MyBatis框架只需要掌握基本的数据库操作就可以进行对数据进行管理,而Hibernate框架则要求开发者掌握特有的数据库操作语句。
通过近几年的发展,Structs框架已经很少开发者在使用了,项目搭建的时候很多开发者会选择使用SpringMVC,很多开发者在开发项目的时候会选择使用SSM框架。MyBatis框架能够支持自定义SQL语句,使得数据库优化变得较为容易,从而性能更高。不久前还出现了SpringBoot框架,SpringBoot框架是在Spring基础上发展的快速整合包。
2.4 JSP技术
Java服务器页面也叫 JSP技术,属于 Java技术的一个系列,是由 Sun Microsystems公司开发的一种动态网页技术标准。根据 JSP网页编译为服务器,可以通过 JavaBeans组件或企业 JavaBeans组件来简化服务器端口的处理。所以 JSP技术在创建最新的网络程序应用中扮演着至关重要的角色。
JSP技术是以一种建立和表现动态网页生成的简洁且更加方便的方法。作为一个软件的制造公司, Sun开发了JSP相关联的技术并且制订了相对应的规则,侧面决定了服务器和 JSP网页之间相互通信的工具,并说明了了页面的格式和语法。用 XML标签和脚本封装 JSP页面,创建逻辑结构化的页面。它以 XML或 HTML格式发送不同的标签,直接到达网页,应该得到答复。正因如此,JSP网页将会表明页面和逻辑的设计。
2.5 MySQL简介
MySQL是一种关系数据库管理系统,使用MySQL数据库可以把不同类型数据保存在不同的表中,也就是将本系统的数据库设计成多个表,而不仅仅是将数据放在一个大仓库中,提高数据存储的灵活性[11]。MySQL使用的 SQL 访问语句是比较原生简便规范的SQL查询语句,并且MySQL是开源的数据库,所以MySQL的使用可以大大降低了中小型网站数据储存的成本。并且MySQL具有运行速度快、数据体积小的特点,降低开放成本的基础上也没有降低数据访问效率。
将MySQL 数据库运用在健身房会员管理系统的开发中,可以对目标数据进行分割式存储,这样不但增强了数据访问的灵活性和安全性,而且还提高了数据访问的效率[12]。MySQL是一个开源、简便的数据库,所以在软件制作后期推广就变得容易,毕竟大家都不愿意去拿出额外的钱去投资在没必要的事情上,只要我们不断优化 MySQL 数据库的性能,就可以提高效率且不比收费版数据库效率差。
在软件开发过程中数据库的选择与设计尤为重要,数据库用来存取大量数据,无论是文字、图片,还是音频、视频,这些我们所需要的数据都可以储存在数据库中,在MySQL中数据冗余也在一次次优化中减少,很大程度上解决了我们数据存储问题。
Navicat for MySQL是支持 Unicode,可以对本机或联网的 MySQL 服务器进行连接强大的MySQL数据库管理开发工具。其图形界面简单易懂易于操作,Navicat for MySQL可以为用户提供较为保险与便捷的数据创建、存取与共享,可自由掌控 MySQL 数据库进行数据管理。
3 需求分析
在设计系统之前需要了解到客户的需求,才能够分析出系统所需要的功能,进而确认完成的业务逻辑的功能,最后实现出系统。
3.1 系统目标
最终完成的网上选课系统需要设置以下的目标:
(1)用户登录网上选课系统的时候在操作上不能够过于复杂,程序开发者在设计的时候需要简化系统操作的步骤。
(2)系统需要设置用户权限以区分不同的用户角色。
(3)系统所使用的数据库需要有并发和安全的作用。
(4)设计实现的网上选课系统需要允许多个用户登录。
(5)管理员登录网上选课系统之后能够对系统的信息通过数据库SQL语句进行管理[5]。
3.2 功能需求分析
图3-1 学生用例图
图3-2 教师用例图
(3)管理员用例表,如图3-3所示
图3-3 管理员用例图
(4)前台用例表,如图3-1所示
图3-4 前台首页用例图
3.3 非功能性需求分析
(1)安全性。网上选课系统数据库使用的是MySQL,用户在客户端界面中不可以直接修改系统的数据,如果没有登录系统则不能够使用系统功能。
(2)可扩展性。网上选课系统的功能需要不断更新,使得系统能够不断适应时代的发展和用户新的要求。本网上选课系统使用的框架都为新型的开源框架,这能够有助于后续系统的功能扩展。如果系统需要添加新的功能的时候只需要新添加对应的接口。
(3)效率性。本系统存储系统的数据使用的数据库为MySQL,能够使用MySQL缓存系统常用的数据库信息,当用户下次访问相同的信息时候,系统能够快速响应。
4 概要设计
本学生选课系统主要可以分为前台和后台两个操作平台,前台主要操作功能也就是给各个后台用户同时提供多种操作,例如:管理员通过后台登录、注册、修改用户信息以及用户查询,发送学习资料、课程信息等多种操作功能。
4.1系统功能设计
该学生选课系统主要包括三个模块的设计,它们分别是学生模块、教师模块和管理员模块。设计本次系统主要功能包括:学生模块:学生咨询管理、课程选择管理、课程成绩管理、学习情况管理、学生学分管理等功能。教师模块:教师信息管理、热门课程管理、学生咨询管理、学习资料管理、课程选择管理、课程成绩管理、学习情况管理、学生学分管理等功能。管理员模块:学生管理、教师管理、教师信息管理、热门课程管理、科目信息管理、学生咨询管理、课程选择管理、学习资料管理、课程成绩管理、学习情况管理、通知公告管理、系统管理等功能,功能结构图如图4.1所示。
图4-1 功能模块图
6 系统实现
6.1 登录
用户登录网上选课系统使用系统功能之前,首先需要做的是身份验证,只有当用户名和密码都正确的情况下才能够使用系统的功能,如果用户输入的密码不正确,则不能够使用系统功能,用户注册和登录的操作会将信息保存在Session里。
用户在输入用户名和密码之后,首先业务逻辑代码会进行非空和长度的校验,之后需要查询数据库用户表中的记录是否和用户输入的信息是否相同,如果相同则能够登录,登录界面如图6-1所示