基于Spring MVC的教务管理系统

2020-06-10 07:41周杰
电子技术与软件工程 2020年4期
关键词:教务流程图管理员

周杰

(1.湖南大学 湖南省长沙市 410082 2.广东省核工业华南高级技工学校 广东省韶关市 512026)

1 教务管理系统开发关键技术

本系统充分考虑学校内的工作需求,在符合学校教务信息化管理发展的基础上,对学校内的教务进行信息化的统一管理,该教务管理系统主要采用 J2EE 开发构架中的Spring MVC 框架结构模型。

1.1 J2EE 技术介绍

J2EE作为新型的Java平台最开始是SUN公司为了迎合大企业主机级别计算类型的需求。J2EE功能非常丰富多样,它创新性地建立了可重用的模块组件,并以此为基础,创造了新型的等级结构来解决编程中各个方面的问题。因此,基于J2EE的程序重用更加灵活方便。它可以通过JDBC应用程序接口完成数据访问并保护Internet应用程序中的数据[1]。

J2EE极大地减少了降低程序系统开发的繁复程度。首先,平台的统一使得开发应用程序的成本得到控制;其次,对现有的程序的优秀集成能力使得其具有应用程序的部署能力和向导打包能力;最后,J2EE可以通过使用终端集成框架降低开发成本,从而缩短产品的研发时间,更加的灵便稳定。

1.2 Spring MVC 框架介绍

Spring框架根据不同的功能要素分为各个不同的模块,spring MVC就是其中之一。Spring MVC使用了MVC架构模式的思想,将web层进行职责解耦。由于Spring MVC卓越延展性灵活性,易上手等特点,Spring MV正逐渐成为最优秀的MVC框架之一。

Spring MVC分工非常明确,它将工作时角色借助于注解进行了划分。其中,前端控制器由用于接收请求,响应结果;处理器映射器作用是基于请求的url寻找Handler;处理器适配器会按照特定规则去执行Handler;处理器则是用于处理不同用户的请求[2-4];视图解析器对视图进行解析和渲染;视图View将视图展示给用户。Spring MVC 的基本理念是 即用的 MVC,为了实现即用的MVC理念,Spring MVC 添置了许多与此相关的功能,如大量注解的添置,使之完全注解驱动、无缝集成格式化等。

表1:学生信息数据库表

图1:系统的整体功能图

图2:系统E-R图

图3:系统登录界面流程图

2 教务管理系统需求分析及设计

2.1 需求分析

系统需求分析是现代软件系统开发之前必须完成的一项重要任务。其主要任务是确认系统未来使用的基本要求。分析系统需求有很多方法,对于分析教务管理系统的需求,选取了结构化分析方法即(SA方法),它非常适用于数据处理软件系统的需求分析。

教务管理系统是基于现代的信息技术和科学手段,应对学校内的不同用户,满足不同用户对信息化教务管理的需求。因此,系统的需求根据用户的不同分为三个模块。

2.1.1 学生模块

学生管理模块是针对学校内广大学生用户的统一管理,包含学生个人信息管理、网上选课、教师评审、信息查询等。学生可以通过教务管理系统查看更改自己需要填写的个人信息如姓名、联系方式等;也可以通过其进行选课教师的评审;还可以对自己的成绩以及课程表等信息进行查询[5]。

2.1.2 教师模块

教师管理模块是针对教师用户的统一管理,包括教师个人信息管理,所授课程班级不同成绩的计算输入和教师所授课程的管理等。学校教师可以通过教务管理系统维护其个人的基本信息,所教授的课程信息和职称信息等。同时,教师管理的子系统还可以帮助教师进行学生课程成绩的录入,对教学的各种信息进行统计分析,包括开课统计,工作量计算等。

2.1.3 管理员模块

管理员模块是学校的信息技术人员所使用的模块,其权限最高,包括学生以及教师的信息维护和修改,培养方案的维护,教学信息的发布。管理员可以通过系统对学生教师所录入的信息进行核实并改错[6]。管理员用户具有维护和管理各个学生的具体培养计划的权限,包括所需研修的专业课程、课程教师和学分实践要求等。 管理员用户还可以将学校所传达的各种信息通过系统来进行发布。

2.2 系统功能设计

教务系统功能模块的设计要充分考虑到不同用户角色所操作完成的业务功能项。因此系统功能模块的设计也是围绕着用户角色所完成的,根据需求分析,将学生,教师和管理者三种类型的用户的需求进行汇总整理。系统的整体功能要求如图1所示。

2.3 数据库设计

基于需求分析、教务系统的相关研究以及相关数据的收集,确定系统三种不同ID 的功能为:学生和教师可以在教务系统中管理自己的个人信息,学生和教师还可以分别在系统上进行成绩的管理,具体表现为学生借助教务管理系统可以网上自助地选课操作、相关成绩的查询以及教师借助教务管理系统进行所授课程各种成绩的录入[7-8]。对于管理员来说,管理员需要协助管理学生教师的个人信息,管理员还应根据学校的需要发布向学校传达的信息,此外,管理员还负责管理系统中的培养方案。根据教务管理系统的功能以及逻辑关系,得出其基本实体联系图。 系统的 E-R 图如图 2所示。

在考虑系统数据库设计时,为了确保系统的查询速度,对各种数据库进行比对后选择了无关联数据库。它在一定程度上设计数据的冗余可以利用空余的空间来确保速度。但是,无关联数据库的数据库表在实现过程中,实体中的任何一个属性都要与其相关的数据库表的字段一一对应,如学生信息需要姓名、性别、电话、班级等,如表1所示。

3 教务管理系统功能的实现

本教务管理系统基于 Spring MVC 框架设计,功能的实现主要是依托Spring MVC 结构进行增、删、查、改数据库表的内容来完成。由于Spring MVC的配置具有较高的灵活性且分层明确清晰,因此非常适合新手操作,开发人员在将业务逻辑实现后,开发人员可以根据系统需要定义系统返回的页面。Spring MVC 的数据处理顺序为:

(1)客户端发来请求,Spring对客户端输送来的请求进行接收分析;

(2)Sping会按照上一步的分析数据,对请求进行控制器的匹配,并将请求发送过去;

(3)控制器接收到请求后,对数据进行增、删、查、改等处理;

(4)控制器将处理完成后的数据打包成包含模型视图的集合并返还;

(5)将集合内数据进行解析并将处理后的数据显示在页面中。

本系统根据权限以及教务管理需求将角色分为:学生,教师和管理员三种。由于springMVC框架是分层但结合使用的工作模式,所以系统将jsp技术与springMVC中的视图层结合起来,在不同的文件夹中分别储存系统不同用户的界面。将index和登录界面以及操作成功失败界面直接放在主目录;控制器层为servlet类,用来处理视图层发送的每个请求,存放在以域名翻转命名的包内:net.fuzui.servlet;模型层用来存放javabean类,分为实体bean和业务bean中,分别放在以域名翻转命名包net.fuzui.beans、net.fuzui.dao中,实体bean存放实体类,业务bean中存放数据库连接以及对数据库的操作,由servlet调用。系统登录界面流程图如图3。

3.1 学生用户功能模块

学生用户使用该教务管理系统时,主要可以在学生管理界面进行三种操作:个人信息的管理,网上选课和成绩信息的查询[9]。

3.1.1 个人信息管理

此模块为学生自主管理系统内个人信息所设置,一方面,学生根据自身需求,可以查询查看自己的个人信息;另一方面,当学校有要求或者自身个人信息有误时,可以自主地修正部分个人信息。学生个人信息系统数据流程图4。

当学生想要查询自己的个人信息时,系统会借助超链接,应用selectAll方法,在方法中查出学生的所有个人信息再利用键值对的方法把信息转到系统的一个页面上,在显示页面,系统会把学生的个人信息汇总到设定好的表格里面。

图4:学生个人信息管理流程图

图5:学生网上选课流程图

图6:系统成绩查询流程图

当学生想要更改自己的个人信息时,学生用户可以点击系统学生管理界面的相关超链接,系统会自动将学生ID 传送至后台,后台根据学生ID 会将所有的此ID 相关信息回显至系统页面之后,再使用@ModelAttribute注解,将该ID所查询到的信息和输入的信息进行比对,如果有修改,那么系统更改为修改后的信息。当然,有些信息是不允许学生个人进行修改的,在系统功能实现的时候可以通过添加隐藏域来限制学生用户的权限。

3.1.2 网上选课

教务管理系统的学生用户界面包括网上选课的功能,目的是节省学生选课的时间,更便捷地帮助学校管理课程,根据系统可以根据课程人数以及选课相关要求来帮助学生选择课程。其具体流程如图5。

图7:教师个人信息管理流程图

图8:成绩录入流程图

图9:课程管理流程图

在学生界面查询选课结果时,利用了数据库表与表之间级联,通过选课表、课程表、课程安排表、教师表四表级联的sql语句,查询出课程的名称、授课的班级、上课的时间、教室、学分等信息,并将此信息存放在一个实体类中,方便调用。

在视图层的样式设计中,通过css设置背景色透明度渐变和背景图片透明度来实现整体视觉效果,在该系统中,表比较多,所以将表的样式也焕然一新。总界面分为左侧栏和显示栏,运用js,左侧栏通过点击相应图标可收缩隐藏。

3.1.3 成绩信息查询

成绩信息查询功能的主要功能是帮助学生更快捷地查询自己各科目成绩,以免耽搁学生选课重修的时间,学生也可以使用此模块查询以往学年的各科成绩,以便于学生对自己学习进行统筹管理。系统流程图如图 6。

学生成绩的查询与学生个人信息的查询相类似,系统会借助超链接,应用selectAll方法,在方法中查出学生的成绩再利用键值对的方法把信息转到系统的一个页面上,在显示页面,系统会把学生的个人信息汇总到设定好的表格里面。

3.2 教师用户功能模块

3.2.1 个人信息管理

该模块主要教师的自我管理页面,教师不仅可以查看自己的信息,而且也可以修改自己的部分信息[10]。当教师的个人信息修改时,系统会从前台教师的输入获取到教师输入其个人信息的各个字段,后台通过跟原有信息的比对来进行修改并更新数据库中的信息,其工作流程与学生管理个人信息的流程方法基本一致。其流程如图7。

3.2.2 成绩录入

系统教师模块的成绩录入功能主要用于,期中期末时,教师维护学生的成绩情况,其具体工作原理类似于个人信息修改,但是,成绩录入可以借调相关的函数功能,能为教师实现计算班级平均分以及根据考试成绩跟平时成绩计算总成绩等简便功能。其具体流程如图8。

3.2.3 课程管理

依据教师的需求在系统教师管理页面设置课程管理模块,其主要功能是为了实现教师对所授课程的信息化管理,此模块不仅可以查询教师的课程信息,详细的显示所授课程的班级专业,教师安排等,还可以帮助教师实现网上课程信息的修改等。其具体系统数据流程图如图9。

3.3 管理员功能模块

3.3.1 学生与教师管理

管理员有权限管理学生以及教师的个人信息进行,具体表现在,增加删减学生教师的信息等,其具体流程如图10。

管理员可以删除离校学生以及离职教师在系统内的信息,其具体操作为,在系统管理员截面点击学生或者教师的信息删除(超链接),系统转到delete方法中,当删除用户信息时携带用户id,这样才能按id删除用户。然后,系统把参数id放到路径中,在删除时要将POST请求转换为delete请求,通过一个表单设置一个隐藏域来设置delete,然后进行提交;这里删除超链接是在循环中的,可以通过用一个class类用jQuery进行提交。

管理员可以新增部分特殊学生以及新入职教师在系统内的信息。管理增加学生信息具体流程为,点击系统内设置的超链接,系统转进insert方法,然后系统会在方法中查找出需要用户选择,通过下拉菜单选择,然后执行完方法,转到insert.jsp页面进入insert.jsp页面,使用Spring标签,这样可以信息回显,保存信息后,然后返回显示列表。换言之,管理员通过在系统的新增页面中输入新增信息,系统后台获取这些数据后,将获取到的信息进行封装,再调用数据库持久化的方法,系统就能实现数据库的添加的信息记录操作。

图10:管理员管理学生教师流程

图11:方案管理流程图

图12:信息发布管理流程图

3.3.2 培养方案管理

此模块的主要功能是管理员在系统上对学生的培养方案进行信息化管理 ,系统内管理员界面的培养方案模块可以实现学生培养方案的查询、删除、修改等操作,其工作原理与教师界面中的课程信息管理模块类似,其具体流程图如图 11。

3.3.3 信息发布管理

信息发布模块便于管理员进行教务信息发布。当管理员要发布新的信息内容时,首先,登录系统管理员界面,点击管理此模块的超链接后输入编辑好的信息内容;其次是对象的封存,由于是公告的发布,系统后台会将其封存为公告对象;最后,再调用数据库持久化的方法,就实现了新的公告在系统上的发布。其流程图如图12。

4 总结与展望

如今,信息化高速发展,时代对学校的信息化管理提出了更高的要求。基于Spring MVC的教务管理系统充分迎合了学校信息化建设的需求。改变高校教学管理人员和师生教学活动的现状,提出了一种新的高校教务管理模式。新的教务管理模式在网络平台的支持下,更有效地实现了教务的信息化管理和更简便的学习信息、课程信息管理等,确保了学校教学质量。综上所述,信息化的教务管理系统正在不断发挥作用,但要在教学管理中发挥更大的作用,仍需要不断探索和实践。

猜你喜欢
教务流程图管理员
教务排课对高等院校教学运行的作用分析
我是图书管理员
我是图书管理员
浅析高校教务管理存在的问题及对策
专利申请审批流程图
专利申请审批流程图
浅谈新形势下高校教务管理人员的素质与培养
以培养方案为核心的教务管理系统开发的探索与实践
宁海县村级权力清单36条
《天津医药》稿件处理流程图