admin 管理员组

文章数量: 1184232


2024年4月29日发(作者:sumifs函数可以使用大于)

龙源期刊网

基于Web的在线学习系统设计与实现

作者:陈伟宏 张龙 王璐

来源:《计算机时代》2013年第09期

摘 要: 针对传统教学中学生学习、交流受时间地点限制的问题,设计和实现了一个基于

Web的在线学习系统。该系统基于B/S模式、采用Struts2框架、使用Java语言和SQL

SERVER 2005数据库实现。该系统的特色在于后台管理可远程添加课程和课程资源,前台除

显示课程资源外,还有在线视频播放、在线交流和学习论坛等。该系统可弥补传统教学中的不

足,在学生自主学习中发挥重要作用。

关键词: 在线学习系统; Struts2; Java; SQL Server

中图分类号:TP311 文献标志码:A 文章编号:1006-8228(2013)09-22-03

0 引言

随着网络信息技术的快速发展及其在教育中应用的不断深入,传统的教学模式、教学方

法、教学内容、教学手段都产生了深刻的变革,教学过程从“以教为中心”走向“以学为中心”,

逐步形成了以学习者为中心的在线学习模式,这种学习模式已经成为现代教育的重要方式和发

展方向[1]。传统的教学方式需要师生在物理空间上面对面,教与学受空间和时间的限制,而

基于Web的在线学习以拥有丰富的网络资源、不受时空限制等优势,拓展了传统校园的界

限,创造出更广阔的多元化学习环境,让学习无处不在、无时不可,因而在线学习系统应运而

生。

目前,国内外建设了许多精品课程网站,特别是西方发达国家政府大力鼓励发展精品课程

网站,这些网站提供了丰富的教育资源[2]。课程网站的开发技术由以前的Basic、Visual Basic

等语言,发展到现在的JSP、ASP技术访问SQL Server、Sybase或Oracle数据库[3-4]。从开发

语言上,JSP比之前的开发语言有更高的效率和安全性,组件方式更方便,适应平台更广;与

Structs2框架相结合后,易于扩展业务和后期维护,能得到更高的效率[5-6]。本文基于B/S模

式、采用Struts框架设计和实现了一个在线学习系统,系统前台显示使用JSP在浏览器上实

现,业务逻辑使用JavaBean组件实现,后台数据库使用SQL Server 2005。该系统以培养学生

自主学习能力为特色,通过在线交流能及时反馈学生的学习效果,通过论坛能充分展现学生的

个性化学习,积极促进现代教育教学质量的提高。

1 系统分析与设计

1.1 系统总体功能

龙源期刊网

在线学习系统功能包括前台显示和后台管理两大模块。前台模块有用户注册与登录、课程

资源显示、资源下载、在线交流和论坛等功能,课程资源显示页面包括课程简介、教师团队、

教学方法、教学内容、教学效果等课程介绍,还提供pdf文档预览、视频在线播放、文件下载

等功能。论坛模块根据计算机涉及到的各类技术设计了分版块发帖和回帖,以及资源的上传和

下载。后台模块包括用户管理、课程资源管理和论坛资源管理。未注册用户只能浏览页面信

息;已登录的普通用户可以下载和评论课程资源,在论坛中可以发帖、回贴,下载和上传资

源;管理员除拥有普通用户全部功能外,还能对整个网站进行管理。管理员可以对已上传课件

进行修改、删除,发布新课程,添加或删除课程资源;对论坛模块的资源,可以删除非法帖和

评论以及修改贴子类型,删除非法资源,可以删除用户或重置用户密码等。

1.2 数据库设计

数据库在信息管理系统中占有非常重要的地位,合理的数据库结构设计不仅可以较好地实

现业务流程,同时也可以提高数据存储的效率,保证数据的完整性和一致性。数据库设计根据

逻辑分析系统的所需功能划分模块,包括所需表的建立、分析各表之间的联系、整个数据库的

确定和建立。该系统数据库使用SQL Server 2005,采用JDBC技术连接,设计了10个数据

表,包括用户信息表(dbo.T_User)、资源类型表(dbo.t_source_collect)、课程资源表

(dbo.t_sourse)等。由于一个帖子可包含多个附件和多个回复信息,帖子类型惟一,一个用户

可发表多个帖子,因此,帖子信息表与帖子类型表是一对一的关系,与用户信息表是一对多的

关系,与帖子回复表、帖子附件表是一对多的关系。一门课程可包含多个课程资源和多条评

论,其中资源类型惟一,一个管理员可发表多个课程,课程信息表与课程资源表和课程评论表

是一对多的关系,与管理员信息表是一对多的关系,课程资源表与资源类型表是一对一关系。

系统的数据库模型如图1所示。

2 系统关键技术及实现

系统采用MyEclipse可视化设计工具和Struts2框架实现。设计过程中,使用JSP页面充当

View层,Action充当Controller层,JavaBean充当Model层,DAO层用JDBC编程实现,数

据库采用纯Java连接方式连接SQL Server 2005。开发系统时,由JS、Html或Ajax技术将客

户端的请求发送至Web服务器,由Action接收请求并将处理结果返回至客户端;采用Java编

写程序,实现对在线学习系统中各个功能模块内容的增、删、改、查等功能。

2.1 数据库的连接

系统创建了一个数据库连接SQL工具类,在类中实现建立数据库连接、执行数据库操

作、得到执行数据库操作返回的结果集、关闭数据库等常用方法,方便其他类调用。

⑴ 建立数据库连接的关键代码

龙源期刊网

public SQL() throws Exception {

try{ e("verDriver");

con=nection(

"jdbc:sqlserver://localhost:1433;databaseName=db_BBS",

"javaUser","123456");

} catch (Exception e) {throw e;}}

⑵ 得到执行数据库操作返回的结果集

public ResultSet getRs() {

try { return ultSet();

} catch(SQLException e) { n("获取结果集失败");

tackTrace(); }

return null; }

2.2 Ajax技术的使用

Ajax的核心是JavaScript对象XmlHttpRequest,支持异步请求,使用JavaScript向服务器

提出请求并处理响应,不阻塞用户。系统中客户端向服务器通过Ajax发送请求,其关键代码

如下:

$(function() {

$(".type").each(function() {

var type=$(this).text();

if(type=="pdf"||type=="PDF"||type=="flv"||type=="swf") {

var temp=$(this).parent().parent().children().eq(4)

.children(".view").attr("disabled",false);

龙源期刊网

} else {

$(this).parent().parent().children().eq(4).children(".view").attr("disabled",

"disabled");

}

});

$(".download").click(function() {

var name=$(this).attr("name");

var path=$(this).attr("path");

var url="study/download";

(url+"?name="+name+"&path="+path, "_blank");

});

$(".view").click(function() {

var path=$(this).attr("path");

var url1="study/";

var url2="study/";

var type=$(this).parent().parent().children().eq(2)

.children("font").text();

if(type=="pdf"||type=="PDF") {

(url1+"?path="+path, "_blank");

} else {

(url2+"?path="+path, "_blank"); }

});

龙源期刊网

});

2.3 Struts2框架的实施

Struts2是一个功能强大的Java Web开源框架,是一个基于Action的MVC框架。在系统

中,Struts2的实施包括Action类的实施、映射关系的配置、前台页面动态数据显示实施三个

方面。

⑴ Action类的实施。Strust2的Action类只需要实现Action或ActionSupport接口,甚至可

以使用有execute()方法的POJO。在execute()方法中可以直接处理前端提交的信息,并

对数据库做相应的增、删、改、查操作。

⑵ 映射关系的配置。在文件中对Action进行配置,控制Action请求到Action

类的映射,以及Action类到jsp页面的映射关系。

⑶ 前台页面动态数据显示的实施。通过EL表达式或struts2提供的OGNL表达式,可以

将后台从数据库获取到的数据在前显示出来,尤其是大批量的数据显示,strust2的标签库中提

供了迭代标签,可以对集合数据进行迭代。

系统中的配置如下:

value="20000000">

extends="struts-default">

龙源期刊网

study/

2.4 论坛管理

论坛管理包括发帖类型管理和版块管理,可对版块中的发帖进行删除等处理,具体效果如

图2所示。

3 结束语

本文设计和实现了一个基于Web的在线学习系统,该系统采用三层B/S模式,可在后台

远程添加课程名称和课程资源,操作简捷方便;前台提供课程显示、在线视频播放、在线交流

和论坛功能,能在学生自主学习的同时与教师进行互动,及时反馈学习效果。通过在线学习系

统的使用,不仅可弥补学生公共计算机水平参差不齐的状况,还能强化学生的个性化学习,从

而促进教学质量的提高,为培养自主学习型、创新型人才起到重要作用。

参考文献:

[1] 郭小雪.基于JSP/Servlet的三层式网上书店的研究与实现[D].吉林大学,2006.

[2] 王国栋,杨树勋,刘殿文等.JSP在网上书店中的应用[J].青岛科技大学学报(自然科学

版),2003.3(24):264-266

[3] 刘志海.C语言在线学习系统设计和实现[J].计算机与数字工程,2011.6:177-180

[4] 王俊伟,史创明编著.SQL Server 2000 数据库管理与应用[M].清华大学出版社,2006.

[5] 刘欣怡.软件工程[M].清华大学出版社,2007.

[6] 陈轶,姚晓昆编著.Java程序设计实验指导[M].清华大学出版社,2006.

龙源期刊网


本文标签: 系统 学习 课程 数据库