基于SSH的网络教学平台的设计与实现
2014-10-29陈红宋玲
陈红++宋玲
摘 要
随着信息技术的发展,网络教学成为现代教育技术的热点。网络教学平台能够发挥信息技术在教学中的优势,能够体现以学生为主导的教学理念。本文紧密结合网络教学的实际需求,根据SSH的三层架构体系和分层设计思想,设计了一个网络教学平台,这将有效地推动百色职业学院精品课程建设和教育资源的融通与共享,提高学生在网络环境中的自主学习的能力。
【关键词】网络教学平台 体系结构 SSH技术
今天传统的粉笔黑板的教学模式越来越不能满足发展的需求,随着教育技术手段的发展,教育正在走向信息化。为跟上现代教育改革的步伐,近年来,国内许多高校进行了校园网建设,而与之对应的网络教学软件却相对滞后,所以基于校园网的网络教学平台已经越来越被高校所需求。据有关研究显示,网络教学平台在应用中存在一些问题,比如:网络教学平台的应用水平低于开发水平;各学校网络教学平台的水平与实际应用水平不完全一致,而有的学校平台功能不是很强大但应用效果很好、对需要的满足度高,反映好。所以,构建高质量的网络教学平台正在成为教育技术领域的一大研究课题。
本文基于目前网络教学的现状和要求,对网络教学平台进行研究,并设计实现了一个基于SSH的网络教学平台,辅助老师教学和学生进行自主学习,推动百色职业学院的校园网建设和精品课程建设,提高学院的教育信息资源的应用水平与效率。
1 基于MVC模式的SSH开发技术
1.1 MVC结构模式
如今,MVC是Web应用开发中最常用的设计模式,MVC(Model-View-Controller),即由模型、视图、控制器三种部件组成。即即把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行分离,它减弱了业务逻辑接口和数据接口之间的耦合,以及让视图层更富于变化,使得可以用多个显示视图来显示一个模型,无论何时发生了何种数据变化,控制器都会控制所有的视图,使显示更新。
1.2 SSH技术
采用SSH框架可以清晰的划分应用层次,缩短开发周期,提高系统灵活性,提高代码的可扩展性、可维护性及可复用性等。
Struts是基于Java的一套框架技术,是目前使用最多的JSP Web框架,是一个开源的MVC框架。Struts是基于面向对象设计的,他的实现重点在控制器上,同时也为试图提供了一系列定制标签功能。
Hibernate是目前最为流行的ORM(对象/关系映射)框架,在关系数据库和Java对象之间做了自动映射,使得程序员可以非常简单的方式实现对数据库的操作。Hibernate的作用是实现持久化对象和数据库中表之间的映射,它处于应用程序和数据库之间,相当于一个持久化对象和数据库中数据的一个转化平台。
Spring出现的一个最大的目标就是使J2EE的开发变得更加容易。Spring致力于提供一个以统一的、高效的方式构造整个应用,并且可以将单层框架以最佳的组合揉和在一起建立一个连贯的体系,可以说Spring是一个提供了更完善开发环境的框架,可以为对象提供企业级的服务。
2 系统设计
2.1 功能概述
本文设计的网络教学平台主要目的是为了辅助教学,实现课堂同步学习与课后异步学习的整合。在该平台中,可以各种进行信息发布,还可以上传课件,学生可以选择课件进行学习、自测并对课件进行评价,通过该模式老师能及时了解、解决学生学习过程中遇到的问题。
本教学平台从用户角度将系统分为教学管理、教师教学和学生学习三个模块,系统功能结构图如图1所示。在教学管理模块,管理员可以赋予、删除用户权限,可以在相应学期内增加科目、删除课件,可以推荐精选课件(免登录可学习的课件);在教师教学模块,各老师可以在相应的学期、科目里上传课件和试题、发布作业和网上答疑;在学生学习模块,学生可以根据自己的情况选择相应学期、科目里的课件进行学习,学习之后可以进行测试学习情况,并对课件进行评价。
2.2 系统构架
本网络教学平台基于B/S(Browser/Server)模式,技术架构从传统的浏览器-WEB服务器的两层体系结构扩展成WEB浏览器-WEB服务器+Java应用程序服务器-数据库服务器三层体系结构,这种结构不但把客户机从沉重的负担和不断对其提高性能的要求中解放出来,也把技术人员从繁重的维护升级工作中解脱出来并且扩展性好,也便于分布式开发和动态更新。开发技术采用SSH(Struts + Spring+Hibernate)架构开发, Struts、Spring、Hibernate三者的结合可以构建出灵活、易于扩展的多层Web应用程序。基本业务流程如图2:通过JSP页面实现交互界面,负责传递传递HTTP请求和接收响应;Struts实现表示层,根据前端控制器ActionServlet接收到的请求,分派相应的Action;Spring实现业务层,Spring的反转控制器(Ioc)负责向Action提供业务模型组件和数据处理组件控制应用程序流程,并更新模型状态;Hibernate实现持久层,数据库访问采用DAO模式,并通过对JDBC的封装,向程序员屏蔽了底层的数据库操作,依赖于对象化映射和数据库交互来处理DAO组件请求的数据,并返回结果。
2.3 数据库设计
本网络教学平台涉及用户信息、课件、试题等大量数据的存储和处理,因此数据库的逻辑设计和有效的物理设计至关重要,良好的数据库设计可以提高平台的性能,减轻后期维护的工作量。本文数据库的设计遵循数据独立性、完整性、最小冗余性、灵活性、共享性、安全性和可恢复性的原则,数据库层次概念设计采用E-R模型和视图继承设计方法进行设计,由于用户的权限不相同,将本平台中的用户分为管理员、教师和学生,系统E-R图如图3所示。数据库采用SQL Server2005,主要数据资源有用户表、学期表、科目表、课件表、试题表、评价表六个表。
3 系统实现的关键技术
3.1 课件的上传、浏览与下载
在本网络教学平台中,可以上传、浏览、删除教学课件和图文作业,这里用Smart File组件,只要写一个简单的JSP文件,在文件中构造出课件存放的路径就可以实现。上传文件时还可以设置上传限制,比如文件长度、类型等。下面是上传课件的伪代码:
SmartUpload su = new SmartUpload();
su.initialize(pageContext);
// 设定上传限制
su.setMaxFileSize(); //限制每个上传文件的最大长度
su.setTotalMaxFileSize();//限制总上传数据长度
su.setAllowedFilesList(""); //通过扩展名限制设定允许上传的文件
su.setDeniedFilesList(" "); //通过扩展名限制设定禁止上传的文件
su.upload(); //上传文件
com.jspsmart.upload.File files = su.getFiles().getFile(0);// 获得需要上传的file
String fileName = new String(files.getFileName());////获得上传文件的文件名
String path = "路径"+fileName//存放路径files.saveAs(path , files.SAVEAS_VIRTUAL);//上传
3.2 大量数据的批量导入
本网络教学平台需要添加大量的数据,比如用户(学生、教师)名单,这些数据在本平台可以从Excel文件批量导入,管理员只需把符合格式的文件上传(Excel表中的各列的意义与数据库表中的每个字段一一对应),再点击导入数据就可以把数据导入到数据库中,这极大的减轻了管理员的工作。这里主要是Excel文件读操作,并且只能对表进行读操作,管理员将Excel文件上传到服务器后,系统根据文件名找到改文件,从该文件一行一行的读入数据,再把每行中的数据分离,写到临时变量中,然后进行数据加工写到相应的字段,如此循环,直到文件读完。
3.3 数据库连接池
每次访问数据库都要建立连接,建立连接是一个费时和占用内存资源的活动,本教学平台是基于Web的应用,是必要频繁的访问数据库,频繁的建立、关闭连接会占用很多的系统资源,网站的响应速度必定下降,严重时甚至会造成服务器的崩溃。本平台采用数据库连接池技术。数据库连接池的基本思想就是为数据库连接建立一个“缓冲池”。预先在缓冲池中放入一定数量的连接,当需要建立数据库连接时,只需从“缓冲池”中取出一个,使用完毕之后再放回去。我们可以通过设定连接池最大连接数来防止系统无尽的与数据库连接。更为重要的是我们可以通过连接池的管理机制监视数据库的连接的数量﹑使用情况,为系统开发﹑测试及性能调整提供依据。
4 结束语
本网络教学平台有效推动了教学资源的共享,补充了课堂教学,实现了课堂同步学习与课后异步学习的整合。学生可以根据自己的实际情况任意的选择时间、地点和内容进行自我学习和测试,有利于学生自主学习能力的培养;并且老师通过学生的课件评价留言可以第一时间了解学生的问题,使学生与老师、老师与老师之间的教学交流与互动得到加强,也有利于课程改革。
参考文献
[1]毛芳,陈丽,余胜泉.现代远程教育试点院校网络教学平台调研与分析[J].中国运程教育,2013.
[2]陈雪娟.基于MVC模式的SSH开发技术[J].电脑学习,2011(02).
[3]涂伟,李小菲.基于J2EE的网络教学平台的设计与实现[J].科技广场,2009(3).
[4]孙卫琴.精通Hibermate:Java对象持久化技术详解[M].北京:电子工业出版社,2005.
作者简介
陈红(1984-),女,山东省苍山县人。学士学位。现为百色职业学院计算机工程系助教。主要研究方向为计算机应用技术。
宋玲(1967-),女,广东省梅州市人。学士学位。广西大学计算机与电子信息学院教授。主要研究方向为计算机网络及应用技术、网络通信服务质量及性能优化、计算机及网络体系结构、计算机应用软件系统的研发。
作者单位
广西大学计算机与电子信息学院 广西壮族自治区南宁市 530004
3 系统实现的关键技术
3.1 课件的上传、浏览与下载
在本网络教学平台中,可以上传、浏览、删除教学课件和图文作业,这里用Smart File组件,只要写一个简单的JSP文件,在文件中构造出课件存放的路径就可以实现。上传文件时还可以设置上传限制,比如文件长度、类型等。下面是上传课件的伪代码:
SmartUpload su = new SmartUpload();
su.initialize(pageContext);
// 设定上传限制
su.setMaxFileSize(); //限制每个上传文件的最大长度
su.setTotalMaxFileSize();//限制总上传数据长度
su.setAllowedFilesList(""); //通过扩展名限制设定允许上传的文件
su.setDeniedFilesList(" "); //通过扩展名限制设定禁止上传的文件
su.upload(); //上传文件
com.jspsmart.upload.File files = su.getFiles().getFile(0);// 获得需要上传的file
String fileName = new String(files.getFileName());////获得上传文件的文件名
String path = "路径"+fileName//存放路径files.saveAs(path , files.SAVEAS_VIRTUAL);//上传
3.2 大量数据的批量导入
本网络教学平台需要添加大量的数据,比如用户(学生、教师)名单,这些数据在本平台可以从Excel文件批量导入,管理员只需把符合格式的文件上传(Excel表中的各列的意义与数据库表中的每个字段一一对应),再点击导入数据就可以把数据导入到数据库中,这极大的减轻了管理员的工作。这里主要是Excel文件读操作,并且只能对表进行读操作,管理员将Excel文件上传到服务器后,系统根据文件名找到改文件,从该文件一行一行的读入数据,再把每行中的数据分离,写到临时变量中,然后进行数据加工写到相应的字段,如此循环,直到文件读完。
3.3 数据库连接池
每次访问数据库都要建立连接,建立连接是一个费时和占用内存资源的活动,本教学平台是基于Web的应用,是必要频繁的访问数据库,频繁的建立、关闭连接会占用很多的系统资源,网站的响应速度必定下降,严重时甚至会造成服务器的崩溃。本平台采用数据库连接池技术。数据库连接池的基本思想就是为数据库连接建立一个“缓冲池”。预先在缓冲池中放入一定数量的连接,当需要建立数据库连接时,只需从“缓冲池”中取出一个,使用完毕之后再放回去。我们可以通过设定连接池最大连接数来防止系统无尽的与数据库连接。更为重要的是我们可以通过连接池的管理机制监视数据库的连接的数量﹑使用情况,为系统开发﹑测试及性能调整提供依据。
4 结束语
本网络教学平台有效推动了教学资源的共享,补充了课堂教学,实现了课堂同步学习与课后异步学习的整合。学生可以根据自己的实际情况任意的选择时间、地点和内容进行自我学习和测试,有利于学生自主学习能力的培养;并且老师通过学生的课件评价留言可以第一时间了解学生的问题,使学生与老师、老师与老师之间的教学交流与互动得到加强,也有利于课程改革。
参考文献
[1]毛芳,陈丽,余胜泉.现代远程教育试点院校网络教学平台调研与分析[J].中国运程教育,2013.
[2]陈雪娟.基于MVC模式的SSH开发技术[J].电脑学习,2011(02).
[3]涂伟,李小菲.基于J2EE的网络教学平台的设计与实现[J].科技广场,2009(3).
[4]孙卫琴.精通Hibermate:Java对象持久化技术详解[M].北京:电子工业出版社,2005.
作者简介
陈红(1984-),女,山东省苍山县人。学士学位。现为百色职业学院计算机工程系助教。主要研究方向为计算机应用技术。
宋玲(1967-),女,广东省梅州市人。学士学位。广西大学计算机与电子信息学院教授。主要研究方向为计算机网络及应用技术、网络通信服务质量及性能优化、计算机及网络体系结构、计算机应用软件系统的研发。
作者单位
广西大学计算机与电子信息学院 广西壮族自治区南宁市 530004
3 系统实现的关键技术
3.1 课件的上传、浏览与下载
在本网络教学平台中,可以上传、浏览、删除教学课件和图文作业,这里用Smart File组件,只要写一个简单的JSP文件,在文件中构造出课件存放的路径就可以实现。上传文件时还可以设置上传限制,比如文件长度、类型等。下面是上传课件的伪代码:
SmartUpload su = new SmartUpload();
su.initialize(pageContext);
// 设定上传限制
su.setMaxFileSize(); //限制每个上传文件的最大长度
su.setTotalMaxFileSize();//限制总上传数据长度
su.setAllowedFilesList(""); //通过扩展名限制设定允许上传的文件
su.setDeniedFilesList(" "); //通过扩展名限制设定禁止上传的文件
su.upload(); //上传文件
com.jspsmart.upload.File files = su.getFiles().getFile(0);// 获得需要上传的file
String fileName = new String(files.getFileName());////获得上传文件的文件名
String path = "路径"+fileName//存放路径files.saveAs(path , files.SAVEAS_VIRTUAL);//上传
3.2 大量数据的批量导入
本网络教学平台需要添加大量的数据,比如用户(学生、教师)名单,这些数据在本平台可以从Excel文件批量导入,管理员只需把符合格式的文件上传(Excel表中的各列的意义与数据库表中的每个字段一一对应),再点击导入数据就可以把数据导入到数据库中,这极大的减轻了管理员的工作。这里主要是Excel文件读操作,并且只能对表进行读操作,管理员将Excel文件上传到服务器后,系统根据文件名找到改文件,从该文件一行一行的读入数据,再把每行中的数据分离,写到临时变量中,然后进行数据加工写到相应的字段,如此循环,直到文件读完。
3.3 数据库连接池
每次访问数据库都要建立连接,建立连接是一个费时和占用内存资源的活动,本教学平台是基于Web的应用,是必要频繁的访问数据库,频繁的建立、关闭连接会占用很多的系统资源,网站的响应速度必定下降,严重时甚至会造成服务器的崩溃。本平台采用数据库连接池技术。数据库连接池的基本思想就是为数据库连接建立一个“缓冲池”。预先在缓冲池中放入一定数量的连接,当需要建立数据库连接时,只需从“缓冲池”中取出一个,使用完毕之后再放回去。我们可以通过设定连接池最大连接数来防止系统无尽的与数据库连接。更为重要的是我们可以通过连接池的管理机制监视数据库的连接的数量﹑使用情况,为系统开发﹑测试及性能调整提供依据。
4 结束语
本网络教学平台有效推动了教学资源的共享,补充了课堂教学,实现了课堂同步学习与课后异步学习的整合。学生可以根据自己的实际情况任意的选择时间、地点和内容进行自我学习和测试,有利于学生自主学习能力的培养;并且老师通过学生的课件评价留言可以第一时间了解学生的问题,使学生与老师、老师与老师之间的教学交流与互动得到加强,也有利于课程改革。
参考文献
[1]毛芳,陈丽,余胜泉.现代远程教育试点院校网络教学平台调研与分析[J].中国运程教育,2013.
[2]陈雪娟.基于MVC模式的SSH开发技术[J].电脑学习,2011(02).
[3]涂伟,李小菲.基于J2EE的网络教学平台的设计与实现[J].科技广场,2009(3).
[4]孙卫琴.精通Hibermate:Java对象持久化技术详解[M].北京:电子工业出版社,2005.
作者简介
陈红(1984-),女,山东省苍山县人。学士学位。现为百色职业学院计算机工程系助教。主要研究方向为计算机应用技术。
宋玲(1967-),女,广东省梅州市人。学士学位。广西大学计算机与电子信息学院教授。主要研究方向为计算机网络及应用技术、网络通信服务质量及性能优化、计算机及网络体系结构、计算机应用软件系统的研发。
作者单位
广西大学计算机与电子信息学院 广西壮族自治区南宁市 530004