基于JAVA的课程设计管理系统的设计与开发
作者:胡江婧 曹双双
来源:《科技创新与应用》2019年第16
        ; 要:随着教育信息化的普及,传统的人工课程设计管理模式已经很难适应现代化需求,针对此问题,设计实现了基于JAVA技术的课程设计管理系统,该系统采用MVC设计模式以及MySQL数据库技术进行开发,实现师生畅通式交流、在线实行课题双选、过程数据实时处理、用户行为计算分析等功能,达到最大程度的资源共享。测试结果表明,本系统具有一定的稳定性,保证了数据的正确性及实时性,有效降低教师工作过程中产生的失误,促进师生互
动交流,保障了课程设计过程管理规范性。
        关键词:课程设计;管理系统;JAVA
        中图分类号:TP311; ; ; ; ;文献标志码:A; ; 文章编号:2095-2945201916-0080-03
        Abstract With the popularization of educational informatization the traditional management mode of manual curriculum design has been difficult to meet the needs of modernization. In order to solve this problem a curriculum design management system based on JAVA technology is designed and implemented. The system is developed using MVC design pattern and MySQL database technology to realize the functions of smooth communication between teachers and students on-line subject selection real-time processing of process data calculation and analysis of user behavior and so on in order to achieve the maximum degree of resource sharing. The test results show that the system has a certain stability ensures the correctness and real-time data effectively reduces the mistakes in the process of teachers' work promotes the interaction between t
eachers and students and ensures the standardization of curriculum design process management.
        Keywords curriculum design; management system; JAVA
        引言
        課程设计是学生在教师指导下综合运用自己所学知识解决问题的一次实践过程,也是检验学生综合素质以及教师教学质量的重要环节[1]。针对传统人工管理模式而言,其管理效率较低,也存在工作过程中数据的泄露及正确率损失。各大高校在教学管理方面目前已经普遍实现的是学生学籍等方面管理,对课程设计管理这一方面很少涉及或不够全面[2]。同时,学生在完成作品过程中不能与老师及时沟通,导致指导效果欠缺。而随着当今远程教育的发展和丰富网络资源共享对其实现网络化是必要的。因此,如何采用先进的技术和方法来提高课程设计的质量尤为重要。
        提高课程设计质量直接有效的方式就是实行课程设计过程的管理,并且对用户使用系统过程行为作出详细数据分析,总结工作改进意见。通过本系统能够有效提升课程设计的管理规范,最大限度地提高教学过程中课程设计的信息化建设。
        1 功能需求分析
        通过调研,明确本系统的总体任务是进行课程设计工作的有效管理。根据课程设计工作流程,系统设计为三级化登录,系统角分别为学生,教师,管理员[3]。各类角拥有各自不同的权限,登入系统后通过浏览器与服务器的交互工作完成相关信息处理。
        学生登入系统后可以进行查看课程设计相关通知和课题信息,浏览教师信息,在线选择课题和查看最终双选结果;查看教师提供的资源,上传作品,能够在线留言及教学评价,保存数据后并退出系统。
        教师端进入系统后也能够查看课程设计相关通知,查看学生信息;确定双选结果,课程设计课题内容管理(包括课题内容上传及增删改,查看学生作品,上传参考资料等),对学生问题进行答疑,查看教学评价。
        系统管理员拥有系统最大权限,实现用户信息统一管理(包括师生信息浏览,添加,修改删除,实行管理员信息修改删除等),管理课程设计通知消息(上传公告,更改删除公告内容),双选时间管理、信息汇总统计,管理学生选题过程信息及成绩输出,保存数据后退出系统。
        2 系统设计
        通过上文需求调查与分析,结合课程设计流程,本系统功能主要体现在以下几个方面:
        2.1 课程设计工作实行分级化管理
        不同的等级拥有不同的权限,管理员实施对系统的管理,而师生不需要进行注册操作,登录时使用学校录入数据库的账号以及密码即可。
        2.2 课程设计过程实行智能化管理
        教师和学生能够按照工作要求,按时完成双选工作,同时管理员也可对过程信息进行管理,使课程设计工作规范化,公开化,公平化。
        2.3 设计过程实现师生沟通畅通性[4]
        当师生不能及时见面时,防止问题得不到解决,学生可上线进行留言询问,教师端可根据学生需求进行答疑,若存在多条相同批次问题,教师能通过系统室对学生进行在线集中答疑。
        2.4 课程设计数据实现可视化
        系统可根据学生选题行为进行数据分析,包括选题趋势,频率等。通过一定的科学分析,了解学生的具体学习情况,进行工作的改进。
        2.5 系统具有一定的安全性以及可扩展性
        本系统仅供本校人员使用,完全禁止无关人员访问服务器,同时系统功能扩充时不影响当前功能结构[5]
        根据设计要求,保证规范且高效地完成课程设计工作,系统模块详细功能如图1
        3 功能实现
        3.1 师生双向选题模块
        这是系统关键的部分,学生选择的结果直接影响到最后其课程设计作品完成以及最终成绩的高低,合适的选题可以充分发挥出学生的学习能力,激发学生去主动探索新知识,同时也促进了教师课题质量提高及自身指导水平。
        待选课通知下发后,学生根在正确的时间点进入系统进行选择,根据自己实际情况选择自己心仪的课题及教师,每个学生拥有两种选择,分别为第一志愿及第二志愿[7]。待初选题结束后,教师端上线可查看选题结果进行选题的确认,每名教师优先选择第一志愿所报学生,且只有当教师小组名额大于第一志愿所报学生数目时教师端才能顺延选择第二志愿学生,而对于选课过程余下未选到的学生,再统一集中进行第二次选课,对于终选结束后依旧未选到的同学,管理员采取随机平均分配的方式以确保每个同学都完成选题工作。
        学生触发选题动作后,页面通过二级联动形式绑定数据,筛选后返回出所选的教师姓名tname,课题名称cname,志愿类别wishtype等基本信息存入学生选课表单CHOOSE_COURSE中,系统通过动态取得DAO层所查询到list数据得到学生所选课题详细信息,按照第一志愿wishtype1及第二志愿wishtype2做出分类别呈现,教师端上线能够查看学生对其的选择情况,根据组内人数对学生进行选择,若wishtype1_num < up_num,则导师需在所报第二志愿人数中选择剩余学生完善组员,对于第二轮选题后能未完成选题的同学,系统采取平均分配的思想完成整个分配流程,出未满员人数最大max_notfull的导师组,其他导师组以该组未满员人数为标杆,算出每组可容纳的人数,所有未满员组可容纳人数和为sum1,当sum1等于未选学生人数时,未满员组别接收待选学生,
完成整个双选过程。
        3.2 在线留言模块
        此模块为师生互动模块,合适且及时的师生交流可以更好解决学生设计过程中所遇难题,促进学生能力提升。当学生遇到难解决情况时,可以登入系统后在线向相关指导教师留言,解决自己不懂的问题,教师端登录后可以查看学生所问的问题,并在线进行回复。当学生点击留言按钮后,触发留言actionaddliuyan通过Servlet配置文件,通过post方法得到表单中内容信息以及留言学生id,通过DAO层添加(insert)方法将留言内容以及留言学生id插入留言信息表中,教师端进行回复留言时,点击回复触发action后,系统得到表单内回复内容,被回复人id以及被回复留言内容将其存入回复信息表。
        3.3 聊天室模塊
        考虑到学生所提问题可能存在重复相似性,以及教师临时集中对学生进行答疑等情况,为了提高教师工作效率,保障师生交流体系的畅通,构建聊天室模块,优化教学工作。
        当用户发送消息时,客户端将用户信息封装后向服务器端发送连接请求,建立一个Soc
ket对象与服务器端进行连接,连接成功后便可成功发送接收信息[8]。服务器端采用多线程形式满足多个客户端发送消息且处理信息,提高服务器工作效率及使用率,建立Server Socket类满足实时数据交换,在端口处监听客户端请求[9]
        3.4 教学评价模块
        教学评价是整个教学流程中检验教学质量重要的环节之一,以学生为主体,公正对教师教学情况进行客观评价,进一步提高学校教学质量管理水平。
        学生评教时根据评价等级-优秀,良好,一般,及格,不及格五个等级对教师指导过程给予评价,每一类等级对应分数为3025基于java的图书管理系统201510。当选择checkbox中下拉列表某一等级时,request对象通过getParameter()得到post表单中等级内容使其存入相应数据库从而对应属性值增加1,教师得到反馈表中Assess_num也对应增加1,系统将得到的属性值后台进行平均计算,反馈给各个老师。
        3.5 数据导入/导出模块
        为了减轻管理员人工录入学生教师信息的工作量,运用Java的反射和注解机制能够有效
实现数据库与Excel文件的数据交互,保证了数据的正确性以及完整性,使用注解时自定义Excel基本信息,如字段名,字段标题,对齐方式等,再通过在Model层中属性对应getter方法添加这些注释,便能将其标记为Excel相关字段,未被注释的字段则不受影响,同时使用反射的方式能获取到类中方法属性。利用反射与注解机制相结合,在实体类中,通过反射机制再基于注解定义的相关字段,创建相应Excel
        导入Excel文件意味着将已经生成的Excel模板存入系统数据库中,此过程中需定义接口方法接收文件并对文件进行解析,在Excel文件中,每一行都对应于每一个实体对象,解析后得到存放多个对象的List,在解析过程中,首先检验文件格式以保证文件有效性,再循环每一行数据,将其赋值给对象,存入数据库中。导出过程中引用反射机制,获得实体类中属性方法,再通过@Excel注解将JavaBean中字段出,最后通过HSSFWorkbook对象将值设置到单元格中,实现数据的导出。