APP下载

基于Java EE在线作业管理系统的设计与实现

2019-11-14刘贺滨侯超钧

软件 2019年9期
关键词:作业管理框架管理系统

刘贺滨 侯超钧

摘  要: 本文针对高校师生作业的管理需求,开发了基于Spring Boot框架与MySQL数据库的作业管理系统。该系统有教师端、学生端和管理员端,教师端提供课程建立,作业发布与网上批改、作业打包下载等功能,学生端提供作业查看,作业附件下载,作业上传和作业分数查看等功能,管理员端提供用户管理和课程管理等功能。系统前端基于Bootstrap框架并结合JavaScript和jQuery进行开发,系统后端采用Spring Boot架构整合开发,使用结果表明能有效提高作业管理效率,可为其他高校的作业管理系统的设计提供有益的参考。

关键词 Spring Boot;MySQL;作业管理系统

中图分类号: TP311.52    文献标识码 A    DOI:10.3969/j.issn.1003-6970.2019.09.012

本文著录格式:刘贺滨,侯超钧. 基于Java EE在线作业管理系统的设计与实现[J]. 软件,2019,40(9):55-58

Design and Implementation of Online Assignment Management System Based on Java EE

LIU He-bin, HOU Chao-jun*

College of Computational Science, Zhongkai University of Agriculture and Engineering, Guangzhou 510225, China

Abstract: This paper is aim to fulfill the demand from the homework management in university. The assignment management system based on Spring Boot framework and MySQL database is developed. The system is composed of teacher platform, student platform, and administrator platform. In particular, the teacher platform provides functional such as publishing a course, publishing an assignment, packaging a download assignment, and scoring assignments. The student platform provides functional such as applying for a course, downloading a job attachment, uploading an assignment, and viewing an assignment score. The administrator platform provides functional such as adding, deleting users, and deleting courses. The front-end client is developed via the Bootstrap framework together with JavaScript and jQuery. The back-end is implemented with Spring Boot architecture. The system presented an effectively improvement of the efficiency of assignment management, and provided useful reference for the other universities.

Key words: Spring boot; MySQL; Assignment management system

0  引言

在学校日常教学活动中,管理学生作业是必不可少的一个环节。在现有教育技术模式下,使用网络提交电子版作业已经相当普及,学生不再需要把纸质的作业递交给老师批改[1]。不少高校都开始使用课程中心或作业管理系统来提供學生作业管理[2-3],如我校由上海卓越睿星数码科技有限公司开发的课程中心,但普遍存在一些问题,如只提供了简单的作业发布与上传功能,没有给予老师完善的网上作业批改功能,其中批改反馈不灵活、成绩录入和统计不方便、较少提供作业批量下载功能、学生在线答疑交流等方面不完善,没有充分考虑教师对电子作业批改和反馈等实际需求[4]

本文开发一个作业管理系统,系统分为教师端,学生端和管理员端,实现了课程管理,学生管理,作业管理,自定义考试和课程讨论等功能。软件界面灵活,操作简单。系统采用Java EE技术和MySQL数据库,运用Spring Boot + MyBaits进行项目开发,其中,前端采用Bootstrap框架实现Web页面设计,运用jQuery框架库来简化JavaScript编码设计,提高编程效率,采用Ajax用于实时异步交互数据,提高了用户的操作友好。

1  系统设计

1.1系统框架设计

本系统架构分为视图UI层,控制器层(Controller层)、业务层、数据持久层以及逻辑组件层。学生提交作业时,在浏览器发起一个业务请求,经过Controller层对请求进行处理,将作业的URL保存至MySQL中。教师下载作业时,在浏览器发起一个业务请求,Controller层读取该作业对应学生提交作业的URL并打包下载对应的文件。系统相应流程图如图1所示。

1.2技术实现

系统后台采用Java EE技术,Spring Boot框架和MyBatis整合实现,前端采用Bootstrap框架与HTML5+CSS3+jQuery技术实现Web页面设计,以IntelliJ IDEA为后台开发工具, MySQL为后台数据库,使用Ajax进行实时数据异步更新。

(1)Spring Boot框架

Spring框架被称为“配置炼狱”,开发者会花费大量时间去理解和编写各种配置文件。为此,Spring Boot采用“约定优先配置”的思想,把Spring框架中许多原本由开发者编写的配置文件自动生成默认配置文件[5]。开发者在Spring Boot规定的默认配置下开发,可专心开发业务逻辑,使开发效率更高[6]

(2)MyBatis框架

MyBatis是一款优秀的持久层框架,支持定制化SQL、存储过程以及高级映射,避免了JDBC代码和手动设置参数以及获取结果集[7],可使用XML或者注解用于配置和原始映射,通过其内部方法将一个Java接口和普通Java对象映射成数据库中的一个记录,大大提升了软件开发效率。

(3)Thymeleaf

Thymeleaf是一个基于XML/XHTML/HTML5模板引擎,能极大地便利前端与后端程序员之间工作交接。前端程序员在浏览器查看HTML,则是有浏览器解析的结果;后端程序员在服务器端访问页面,Thymeleaf标签会更换其中的静态数据,展示带着数据的动态页面。此外,Spring Boot对Thymeleaf也有非常好的集成,只需简单配置相应的包,则可进行页面开发。

(4)MySQL

MySQL是Web应用开发中常用的关系数据库管理系统[8]。MySQL使用了标准SQL语言形式,支持混合多种编程语言,同时支持大型数据库,可存储超过上万条记录的数据仓库。

(5)Bootstrap

Bootstrap框架是一组用于网站和网络应用程序开发的HTML、CSS和JavaScript框架,提供了相当丰富的组件,可以快速地开发网站的前端界面,通过栅格系统与table表格等组件,可以让界面的布局设计更加简便[9]

(6)数据库设计

本文采用ER图来涉及系统数据库,通过ER图表示实体类型、属性和联系,用以描述作业管理系统的概念模型[10-11]。图2是对系统设计的E-R图,对应有10个实体,分别是管理员、学生、教师、课程、学生选课表、学生考试成绩表、学生作业成绩表、教师任课表、试卷、作业等实体。

2  系统实现

系统分教师端、学生端和管理员端。教师端提供学生管理、作业管理和考试管理等功能,学生端提供学生完成作业和参加考试等功能,教师和学生可以通过本系统可以进行在线互相交流,学生能通过与老师和同学之间的交流及时解决在学习过程中遇到的问题,有效提高教学效果。

2.1教师端

教师端有如下七大功能,教师端用例图如图3所示。

(1)課程定义功能

教师可以建立多门授课课程,每门课程需要定义相应课程代码、课程名称、课程性质、课程简介、课程学时和课程学分等基本信息。

(2)学生管理功能

课程新建后,教师可根据课程性质进行学生选课管理。如果课程是必修课,老师需要设定其授课的专业班级,将该专业的班级学生统一归入该课程;如果课程是选修课,老师可以通过手动信息录入与Excel批量导入两种方式设置授课学生。对于批量导入,系统提供Excel导入模板,教师根据要求在Excel文件中准备好学生名单信息即可。

(3)作业发布功能

教师可以在课程中发布作业,可以输入作业要求,并附加该作业所需的图片资源与文件材料等,并设置参与作业的学生班级。教师可以设定作业发布时间与结束提交时间,可以对过期提交的作业进行设置,如,是否允许学生补交,补交作业可以设置扣减分数等。参与该课程的学生都会收到作业通知。对于超过期限且不容许迟交的作业,学生将无法提交,需要老师重新设置该学生的提交。

(4)作业下载功能

以课程的其中一次作业为单位,提供收集参与该课程的学生作业的功能,对逾期未提交作业的学生统一发出通知。教师可以查看每次作业的收集情况,可以修改学生提交作业的时间,对某次作业,可以对指定学生提交的作业进行统一打包下载。

(5)作业批改功能

老师对作业进行批阅之后,可以给作业打分,并能反馈意见给该同学,对达不到要求作业可以退回学生。还提供老师自定义批改评语,方便教师作业批改。同时,老师可以发布优秀作业,供学生参考借鉴。

(6)试卷发布功能

每个课程均可发布单元考试,考试类型均为选择题形式,教师可以选择不同的章节与知识点来组卷,并设置选择题的组题个数,定义考试时间、截至时间等信息。教师可以在网页界面录入题库,也可以使用Excel模板导入,导入的试题可以设置其所属的章节与知识点。

2.2学生端

学生端有如下五个功能,学生端用例图如图4所示。

(1)作业通知功能

提示学生查看未完成作业,让学生能准时完成作业。学生提交完作业后,学生可以查看教师批改的作业分数与批改评语,如果作业被教师退回,可以重新提交作业。学生可以在网站上查看老师选出的优秀作业,通过学习优秀作业,促进学生之间互相学习与交流。

(2)作业提交功能

提供了附件上传的方式,学生可以添加图片和附件,作业发布时设定了提交期限,超过提交期限且不允许迟交的作业,学生将无法提交。对于设置了允许迟交的作业,学生提交后,系统会做出相应记录,并设置相应的扣分项。

(3)考试参与功能

学生需要参加课程发布的考试,要在规定时间内完成。超出试卷的截止时间,学生该次考试的分数为0分,考试试题都是选择题,考试提交后能直接显示分数。考试成绩由系统自动打分,学生提交考试答案后,可查看到考试分数。

(4)交流功能

学生之间、学生和教师之间均可通过交流区进行交流,主要通过发帖的方式进行,其他人都可以对帖子进行回复或增加评论。

2.3管理员端

管理员端具有管理权限和检索功能,管理员端用例图如图5所示。

(1)用户管理功能

管理员一般为学校的教务员,具有对用户和课

程管理的权限,能够对用户进行管理,如管理教师与学生的个人信息,可以批量导入学生账号。

(2)课程管理功能

管理员可以通过教师、班级或课程来搜索学生信息,可查看同一个班级的学生,可查看选修了某一个课程的所有学生。可以对课程相关信息进行设置与修改。

2.4系统界面

图6是教师端作业管理的界面。左边是系统的导航栏,里面是系统功能的导航。在教师作业管理界面,教师可以查看自己发布的所有作业。在作业信息显示部分,“操作”栏有“下载作业”按钮,点击后边“下载作业”按钮,系统会下载打包成压缩包的形式的学生提交的所有作业。

教师把学生提交的作业批阅之后,可以在作业打分界面给作业打分,作业打分界面如图7所示。在作业打分界面,可以看到学生提交的作业。教师在最后一栏点击“评分”按钮,系统回弹出分数输入框,输入相应分数,便可为该作业打分,再次点击该按钮可修改分数,打分结果实时更新在该界面。

图8是学生端作业查看的界面。左边是系统的导航栏,里面是各种功能的导航。在学生作业管理界面,学生能够下载老师上传的附件,当作业完成时,学生能将作业上传。在作业上传管理界面,“操作”栏中有两个按钮,分别为“下载附件”和“上传作业”。点击前一个按钮即可下载附件,点击后一个按钮选中作业即可上传。

3  结束语

作业管理系统是根据我校教师和学生的作业管理需求,以及现有作业管理系统的一些问题,从易用性和高效性的角度去设计和开发。系统的主要目的是方便教师发布作业,下载作业和作业打分,同时方便学生查看作业,提交作业和查看作业分数。本系统在开发中,使用了目前流行的Spring Boot、MyBatis和BootStrap等开源框架,提供给仲恺的教师和学生一个方便快捷的作业管理平台,同时本系

统的设计与实现也作为其他高校学生作业管理系统的改进提供一个有益参考。

参考文献

  • 李诚玉, 张丽丽. 高校网络教学平台面临的应用问题及对策探讨[J]. 中国多媒体与网络教学学报(上旬刊), 2018(7): 177-178.
  • 朱翠苗, 郑广成. 基于泛雅平台的高职程序设计课程SPOC平台建设的研究[J]. 软件, 2017, 38(12): 66-69.
  • 蓝林, 王法胜. 基于Android的课程作业管理系统[J]. 软件, 2018, 39(8): 35-39
  • 刘传尧. 简析高校课程中心平台建设的必要性[J]. 课程教育研究, 2015(10): 233.
  • 姚云飞, 杜洪波, 梁建輝. 基于SpringMVC框架毕业设计管理系统设计[J]. 软件, 2018, 39(1): 91-93.
  • 张峰. 应用Spring Boot改变WEB应用开发模式[J]. 科技创新与应用, 2017(23): 193-194.
  • 乔岚. 基于MyBatis和Spring的Java EE数据持久层的研究与应用[J]. 信息与电脑(理论版), 2017(8): 73-76.
  • 王晓华. 试析MySQL数据库性能的调优[J]. 电脑编程技巧与维护, 2016, 30(22): 48, 82.
  • 龙德应, 唐嫦燕. 运用Bootstrap优化响应式高校图书馆数字资源系统的研究[J]. 农业图书情报学刊, 2018, 30(4): 41-45.
  • 季菁苇. 计算机数据库技术在信息管理中的应用研究探讨[J]. 软件, 2018, 39(6): 160-163.
  • 李东奎, 鄂海红. 基于Hibernate OGM的SQL与NoSQL数据库的统一访问模型的设计与实现[J]. 软件, 2016, 37(11): 14-18.

猜你喜欢

作业管理框架管理系统
“双减”背景下初中生作业管理的实践探究
“减负增质”理念下作业管理的创新策略
基于James的院内邮件管理系统的实现
落实各方责任 加强特种作业管理
广义框架的不相交性
基于LED联动显示的违停管理系统
客车调车作业管理的探讨
海盾压载水管理系统
WTO框架下
一种基于OpenStack的云应用开发框架