时俊雅,黄苏雨
(武汉东湖学院 计算机科学学院,湖北 武汉 430212)
近年来,随着互联网技术的发展,大规模在线教育资源平台受到了学生、研究者的广泛关注,给学习环境和教学环境带来了重大变革。在线学习系统越来越受到人们的关注和喜欢,在线教育资源平台中的海量学习资源为学生提供了更多选择和机会[1]。在线教育作为教育信息化发展的新远景,为学生提供了广泛的学习资源和个性化的学习服务平台,帮助他们进行个性化的学习和主动学习可以满足更多学生的学习需求。传统的线下学习需要在特定的时间和空间进行,存在实践和空间的限制;缺乏灵活性,表现在课程内容不够个性化、学习进度受限;交互和反馈不足,无法满足不同学生的需求。因此,开发一个基于Java的大学生在线学习系统,突破时间和空间的限制,为教师和学生提供更多的教学资源和交流方式具有十分重要的现实意义[2]。
基于Java的大学生在线学习平台的意义是通过Java技术进行在线学习平台的管理,利用互联网技术实现课程和教学资源的数字化,大大提高了教学质量和学生的学习能力。其目的是促进学生能够全面发展,激发学生的自主学习能力,提高学生对学习的主动性,打破时间和空间的限制,使学习环境更加多样化。通过在线平台的学习,也可以改变学生的上网不良习惯,能够辅助和促进课程的学习[3]。本系统用Java语言的跨平台性和易扩展性,结合spring框架的轻量级和高效性,构建了一个功能完善、界面友好、操作简便的在线学习系统。本文将从相关技术、需求分析、系统设计、系统实现等方面对系统进行详细的介绍。
本章将介绍系统所涉及的相关技术,包括Java语言、Spring框架、MySQL数据库等。
是一种面向对象、编译型、跨平台的高级程序设计语言,具有简单、健壮、安全、可移植等特点,是目前最流行的编程语言之一。本系统使用Java作为开发语言,利用其强大的类库和工具支持各种功能的实现[3]。
Spring是一种基于Java平台的开源应用程序框架,它提供了一系列模块来简化企业级应用开发,如控制反转(IoC)、面向切面编程(AOP)、数据访问(DAO)、事务管理(TX)、Web开发(MVC)等。本系统使用spring作为主要的开发框架,采用其MVC模式来实现前后端分离,以及利用其他模块来提高代码质量和效率[4]。
MySQL是一种开源的关系型数据库管理系统(RDBMS),支持多种操作系统和编程语言,具有高性能、可扩展性、易用性等优点。本系统使用MySQL作为数据存储和管理的工具,通过JDBC驱动来实现与Java程序的连接和交互。
本系统主要包括以下功能:
(1)用户管理。该模块负责用户的注册、登录、修改密码、用户角色的划分和权限控制等操作。用户分为教师和学生两种角色,教师可以创建和管理课程,学生可以加入和学习课程。
(2)课程管理。该模块负责课程的创建、修改、删除等操作,以及课程的分类、查询、推荐等功能。每个课程包含课程信息、课程资源、课程作业、课程测试、课程讨论等子模块。
(3)资源分享。该模块负责资源的上传、下载、预览等操作,以及资源的分类、查询、评价等功能。资源包括文档、视频、音频、图片等多种格式,可以由教师或学生上传,也可以从外部链接导入。
(4)作业提交。该模块负责作业的发布、提交、批改等操作,以及作业的查询、评分、反馈等功能。作业可以由教师发布,要求学生在指定时间内完成并提交,教师可以在线批改并给出评分和反馈。
(5)在线测试。该模块负责测试的生成、发布、参与等操作以及测试的查询、评分、统计等功能。测试可以由教师生成,包括单选题、多选题、判断题、填空题、问答题等多种题型,学生可以在指定时间内参与测试并得到自动评分和统计结果。
(6)讨论区。该模块负责讨论的发起、回复、删除等操作,以及讨论的查询、推荐、置顶等功能。讨论可以由教师或学生发起,针对某个课程或某个话题进行交流和互动,支持文字、图片、表情等多种形式的内容。
(1)可用性。本系统应该具有良好的用户界面和用户体验,方便用户进行各种操作和交互,提供清晰的提示和反馈信息,避免出现错误和异常情况。
(2)可靠性。本系统应该保证数据的完整性和一致性,防止数据丢失或损坏,同时应该具有良好的容错能力和恢复能力,能够处理各种异常情况,并提供备份和恢复机制。
(3)安全性。本系统应该保证用户的隐私和数据的安全性,防止用户信息泄露或数据被篡改,同时应该提供合理的身份认证和权限控制机制,防止未授权的访问和操作。
(4)可维护性。本系统具有良好的代码结构和文档规范,方便开发者进行代码编写和修改,同时提供合理的测试和调试工具,方便开发者进行代码检查和错误定位。
(5)可扩展性。本系统具有良好的模块化和组件化设计,方便开发者进行功能添加和修改,同时提供合理的接口和协议规范,方便开发者进行系统集成和协作。
(1)管理员用例。管理员的功能模块包括学生管理、教师管理、学院管理、课程管理、论坛管理、公告管理。
(2)学生用例。学生功能模块包括登录系统、管理个人信息功能、学习课程功能、文件查看功能、讨论管理、公告查看功能、查看,完成作业功能。
(3)教师用例。教师模块功能主要包括课程文件管理功能、发布讨论功能、发布,查看作业功能、个人信息管理功能。
系统的总体功能,可分为3大模块:管理员模块、学生模块、教师模块。将这些模块进行总体功能的实现和系统的完整运行。系统结构功能如图1所示。
图1 系统结构功能
本文根据系统的功能需求共设计了8个数据库表,分别为管理员信息存储管理表(admin)、学生信息存储管理表(student)、教师信息存储管理表(teacher)、课程信息表(course)、作业信息存储表(task_question)、讨论信息存储表(discuss)、在线视频信息存储表(course_video)、学院信息存储表(college)。通过对需求的分析描绘出模块功能的E-R图,如图2所示。
图2 大学生在线学习系统数据E-R图
用户可以输入姓名、身份证号、手机号、密码、选择角色注册账户,同时输入对应账号密码,点击登录,提示密码输入错误,重新点击输入正确密码就能登录到相应身份的页面。
管理员登录成功后,可以对学生信息和教师信息进行管理,同时还具有对相关课程进行管理的功能。
点击学生管理栏进行学生信息查询,可以清晰地看到每个学生的姓名、学号、所属学院、联系电话、身份证号、性别等信息,如果学生信息有误,可修改为正确的学生信息。
点击添加学生信息,编辑输入信息,包括学生姓名、学号、电话、身份证号等,选择性别和所属学院,然后提交完成,显示添加成功。
管理员课程管理。管理员可以新增课程,查看课程信息并进行增删改查。
本系统主要包含学生功能模块、教师功能模块、管理员功能模块。其中,学生功能模块包含注册登录、个人信息管理、课程学习等功能。教师功能模块包含教师身份登录、个人信息管理、课程上传等功能。管理员功能模块包含系统设置、用户管理、资源管理实现对学生、教师信息的添加、修改、删除和查询等功能。该系统能够提高学生的学习效率,可以避免传统教学模式下时间和空间的限制,对学生来讲学习的课程是多样性的,学生可以根据自己的特点学习,取长补短,个性化学习,节约时间,节约资源,师生交流也更自由方便。