基于WEB的课程管理系统的设计与实现

3995
    


来源:
Licence:
联系:
分类:
平台:
环境:
大小:
更新:
标签:
联系方式 :
免费下载 ×

下载APP,支持永久资源免费下载

限免产品服务请联系qq:1585269081

下载APP
免费下载 ×

下载APP,支持永久资源免费下载

下载APP 免费下载
下载 ×

下载APP,资源永久免费


如果出现不能下载的情况,请联系站长,联系方式在下方。

免费下载 ×

下载论文助手APP,资源永久免费

免费获取

如果你已经登录仍然出现不能下载的情况,请【点击刷新】本页面或者联系站长


分 类 号 密 级

U D C 编 号 10486

工程硕士专业学位论文
基于WEB的课程管理系统的设计

与实现研 究 生 姓 名:

指导教师姓名、职称:

工 程 领 域 名 称:软件工程

研 究 方 向: 软件工程2012年 10 月 20日THESIS

By

XXXXXXXXXX 2012

郑 重 声 明本人的学位论文是在导师的指导下独立撰写并完成的,学位论文没有剽窃、抄袭、造假等违反学术道德、学术规范和侵权行为,否则,本人愿意承担由此而产生的法律责任和法律后果,特此郑重声明。学位论文作者(签名):
年 月 日

摘 要

一直以来,学校一般都是使用人工报表的形式来统计和管理学生的课程信息,效率低、费时高、保密性差,并且不能及时反映学生的选课信息,给教师带来了种种的不便,但随着计算机技术的进步和intranet网络技术的日益发展,特别是万维网技术的飞速发展和广泛的普及,使得基于WEB的网络课程管理系统已经成为学校管理学生课程信息的重要方式和研究方向。作为一种新的研究方向,使用网络统计学生课程信息能充分发挥信息技术在教学中的优势,更能与学生互动、准确及时的统计课程信息,让学生和老师能更快捷的管理课程信息,使信息技术和学校教育很好地结合起来,让学校的课程管理工作更高效、更准确、更省力的运行起来,提高管理和决策水平。

基于WEB网络课程管理系统不受时间和空间的限制,可以存在着不同的形式,并且操作起来更灵活,更方便,新的现代教育方法逐步实施和发展,成为了当前的教学活动有力补充。如何更有效的在网络上管理课程信息已逐渐成为学校管理的一个重大的问题,并且作为专业教学信息化建设学院的研究方向,开发一套基于WEB网络课程管理系统在好是解决这个问题的最好方法。

本文着重介绍了基于WEB网络课程管理系统经常使用的SSH框架,这种框架将各类课程资源放在WEB服务器,用户只需要在浏览器上,向WEB服务器提出访问请求,由服务器通过后台数据库,把用户请求服务的内容以网页形式反馈给用户。用户通过系统的要求进行操作,获得用户所需要的内容。

基于WEB网络课程管理系统是基于java平台上开发的应用系统,该系统运用J2EE技术,系统采用Browser/Serve模式、后台数据库为MySql5.0、WEB服务器为tmocat6.0,综合现阶段面向对象思想和三层框架模型,从对象的角度来考虑课程管理系统中各个类之间的关系,由此形成系统的关系模式,使得各角色都能清晰,模块之间耦合低,让系统更安全的运行在网路之中。

本文首先从研究的背景、内容和目标进行介绍;接着对课程管理系统所采用的相关技术和思想进行了阐述;之后介绍课程管理系统的需求分析,然后进行系统的概要设计,包括课程管理系统的设计理念、系统的总体结构、系统功能模块、各类之间的关系、及数据库的设计等;随后重点描述了系统功能模块及关键的技术,最后对系统进行了总结,对系统的后续研究方向进行了展望。

关键词: 网络课程管理系统,面向对象思想,SSH框架,关系数据库

Abstract

All the time since, the school generally use artificial report form statistics and management of students' course information, low efficiency, time consuming and high, confidentiality of the poor, and can't reflect the students course selection information, has brought teachers inconveniences, but along with the computer technology into the step and intranet network technology is growing, especially World Wide Web technology rapid development and the widespread popularization, the network course based on WEB management system has already become the school administration student course information important way and research direction. As a new research direction, the use of network statistics student course information can give full play to the information technology in the teaching of advantages, can interact with students, accurate and timely statistics course information, let the students and teachers can be more efficient management of the course information, information technology and school education are well combined, let the school curriculum management work more efficient, more accurate, more labor-saving operation, improve management and decision-making.

Based on the WEB network course management system is not restricted by time and space, can exist in different forms, and the operation is more flexible, more convenient, a new modern education method of gradual implementation and development, become current teaching activities effectively supplement. How to more effectively in the network management information has become the school management of a major problem, and as a professional teaching informatization construction of research direction, develops a set based on WEB network course management system in the well is the best way to solve the problem.

This article introduced emphatically based on the WEB network course management systems often use the SSH framework, this framework will be all kinds of curriculum resources on the WEB server, the user need only in the browser, to the WEB server to submit access request, by the server through the backstage database, the user request service webpage content to form feedback to the user. The user through the system requirements of the operation, access to users what they need.

Based on the WEB network course management system is based on Java platform application system, the system uses J2EE technology, system uses Browser/Serve model, background database for MySql5.0, WEB server for tmocat6.0, integrated stage object oriented idea and the three layer frame model, from the perspective of object given a course of management systems of various relationships between classes, thus forming system relationship patterns, so that each role can be clear, coupling between modules is low, make the system more secure operation of the internet.

This paper from the background, content and target are introduced; then the curriculum management system used by the related technology and theory are introduced; then introduces the course management system needs analysis, then the outline design of the system, including curriculum management system design concept, system structure, system function module, various types of the relationship between, and database design; then describes the system function module and key technology, finally the system are summarized, on follow-up system of research directions are discussed.

Key words: network course management system, object oriented, ssh framework, relational database

目 录

TOC \o "1-3" \z \u HYPERLINK \l "_Toc338546001" 摘 要 338546001 I

HYPERLINK \l "_Toc338546002" Abstract 338546002 II

HYPERLINK \l "_Toc338546003" 目 录 338546003 III

HYPERLINK \l "_Toc338546004" 第一章 绪论 338546004 1

HYPERLINK \l "_Toc338546005" 1.1 开发背景 338546005 1

HYPERLINK \l "_Toc338546006" 1.2 国内外研究现状 338546006 2

HYPERLINK \l "_Toc338546007" 1.3 开发意义 338546007 3

HYPERLINK \l "_Toc338546008" 1.4 本文研究的主要内容 338546008 3

HYPERLINK \l "_Toc338546009" 1.5 本文的组织 338546009 4

HYPERLINK \l "_Toc338546010" 第二章 相关技术介绍 338546010 5

HYPERLINK \l "_Toc338546011" 2.1 SSH三层框架结构 338546011 5

HYPERLINK \l "_Toc338546012" 2.2 java体系结构概述 338546012 6

HYPERLINK \l "_Toc338546013" 2.2.1 J2SE技术 338546013 6

HYPERLINK \l "_Toc338546014" 2.2.1 J2EE技术 338546014 6

HYPERLINK \l "_Toc338546015" 2.3 servlet过滤器 338546015 7

HYPERLINK \l "_Toc338546016" 2.4 JSP技术介绍 338546016 8

HYPERLINK \l "_Toc338546017" 2.5 JDBC和数据源技术的介绍 338546017 8

HYPERLINK \l "_Toc338546018" 2.6 spring技术的介绍 338546018 9

HYPERLINK \l "_Toc338546019" 2.7 Ajax技术的介绍 338546019 10

HYPERLINK \l "_Toc338546020" 2.8 Tomcat服务器介绍 338546020 11

HYPERLINK \l "_Toc338546021" 2.9 WEB运作原理 338546021 13

HYPERLINK \l "_Toc338546022" 2.9.1 WEB介绍 338546022 13

HYPERLINK \l "_Toc338546023" 2.9.2 Web服务器 338546023 13

HYPERLINK \l "_Toc338546024" 2.9.3 Web客户端 338546024 13

HYPERLINK \l "_Toc338546025" 2.10 struts工作原理 338546025 14

HYPERLINK \l "_Toc338546026" 2.10.1 struts介绍 338546026 14

HYPERLINK \l "_Toc338546027" 2.10.2 工作原理 338546027 14

HYPERLINK \l "_Toc338546028" 2.10.3 优点与缺点 338546028 15

HYPERLINK \l "_Toc338546029" 2.11 小结 338546029 15

HYPERLINK \l "_Toc338546030" 第三章 网络课程管理系统的需求分析 338546030 16

HYPERLINK \l "_Toc338546031" 3.1 网络课程管理系统概述 338546031 16

HYPERLINK \l "_Toc338546032" 3.1.1 传统的课程管理 338546032 16

HYPERLINK \l "_Toc338546033" 3.1.2 网络课程管理系统 338546033 16

HYPERLINK \l "_Toc338546034" 3.1.3网络课程管理系统的优势 338546034 17

HYPERLINK \l "_Toc338546035" 3.2 需求分析 338546035 18

HYPERLINK \l "_Toc338546036" 3.2.1 项目总体结构 338546036 18

HYPERLINK \l "_Toc338546037" 3.2.2 用户身份级别功能分析 338546037 18

HYPERLINK \l "_Toc338546038" 3.2.3 教师模块功能分析 338546038 18

HYPERLINK \l "_Toc338546039" 3.2.4 学生模块功能分析 338546039 19

HYPERLINK \l "_Toc338546040" 3.2.5 管理员模块功能分析 338546040 19

HYPERLINK \l "_Toc338546041" 3.2.6 其它功能模块分析 338546041 19

HYPERLINK \l "_Toc338546042" 3.2.7系统建设目标 338546042 20

HYPERLINK \l "_Toc338546043" 3.2.8 系统功能及流程 338546043 20

HYPERLINK \l "_Toc338546044" 3.2.9 系统角色分析 338546044 21

HYPERLINK \l "_Toc338546045" 3.3 小结 338546045 22

HYPERLINK \l "_Toc338546046" 第四章 系统详细设计 338546046 23

HYPERLINK \l "_Toc338546047" 4.1系统网络技术的结构 338546047 23

HYPERLINK \l "_Toc338546048" 4.2 系统模块设计 338546048 23

HYPERLINK \l "_Toc338546049" 4.2.1 系统模块划分 338546049 24

HYPERLINK \l "_Toc338546050" 4.2.2 整体结构设计 338546050 25

HYPERLINK \l "_Toc338546051" 4.2.3登录模块设计 338546051 25

HYPERLINK \l "_Toc338546052" 4.2.4 课程模块设计 338546052 26

HYPERLINK \l "_Toc338546053" 4.2.5 管理员模块设计 338546053 27

HYPERLINK \l "_Toc338546054" 4.3 数据库设计 338546054 28

HYPERLINK \l "_Toc338546055" 4.3.1 数据库需求分析 338546055 28

HYPERLINK \l "_Toc338546056" 4.3.2 数据库数据表设计 338546056 28

HYPERLINK \l "_Toc338546057" 4.4 系统应用环境 338546057 31

HYPERLINK \l "_Toc338546058" 4.5 小结 338546058 31

HYPERLINK \l "_Toc338546059" 第五章 网络课程管理系统的实现 338546059 32

HYPERLINK \l "_Toc338546060" 5.1 开发环境 338546060 32

HYPERLINK \l "_Toc338546061" 5.2 功能详细设计 338546061 32

HYPERLINK \l "_Toc338546062" 5.2.1 登录实现 338546062 32

HYPERLINK \l "_Toc338546063" 5.2.2 学习页面的实现 338546063 32

HYPERLINK \l "_Toc338546064" 5.2.3 学习心得管理页面的实现 338546064 32

HYPERLINK \l "_Toc338546065" 5.2.4 学生信息管理页面的实现 338546065 36

HYPERLINK \l "_Toc338546066" 5.2.5 课件管理页面的实现 338546066 37

HYPERLINK \l "_Toc338546067" 5.3 关键技术实现 338546067 38

HYPERLINK \l "_Toc338546068" 5.3.1 ssh 三层框架模式中设计模式的设计 338546068 38

HYPERLINK \l "_Toc338546069" 5.3.2 Web引用 338546069 40

HYPERLINK \l "_Toc338546070" 5.4 小结 338546070 40

HYPERLINK \l "_Toc338546071" 第六章 结论 338546071 41

HYPERLINK \l "_Toc338546072" 结束语 338546072 42

HYPERLINK \l "_Toc338546073" 参考文献 338546073 43

HYPERLINK \l "_Toc338546074" 致 谢 338546074 44
第一章 绪论

随着计算机技术的进步和intranet网络技术的日益发展,运用计算机代替人类手工输入保存信息,已经成为必要的发展方向,现代教育技术的日益发展,使得信息系统的建设成为各高校的当务之急,教育是一个国家强国之道。而现代教育技术正以惊人的速度改变着人们的教育理念和学生的学习方式,同时,也正在引起教育领域的深刻变革,促使教育体制和教育模式产生新的重大的飞跃。

随着教育理念的改革,基于WEB网络课程管理系统在各高校教育中得到越来越广泛的使用,建立这种新的教学方法,不仅是现代化教育和信息的发展方向,而且还充分发挥信息技术的优势,让信息技术走进了教育和教学之中,使教育和教学得到了飞跃的改变,改革和提高教学质量和效率的能力,并培养学生学习能力的方法。为现代教育的生存和发展提出了解决实际问题的方法。开展网络选课,更能与学生互动、准确及时的统计课程信息,让学生和老师能更快捷的管理课程信息,使信息技术和学校教育很好地结合起来,让学校的课程管理工作更高效、更准确、更省力的运行起来,提高管理和决策水平。

1.1 开发背景

1946年自从ENIAC诞生之后,计算机就开始进入到了人们的生活之中,傲游网络已成为人们的生活方式,互联网在世界上已经有遍及全球,把世界上的整个网络连接起来了。随着科学和技术的发展,基于互联网应用程序在网络上飞速发展,并且集成了图像,声音,视频等多媒体信息网络技术的越来越来成熟,高校将进入信息技术的教育阶段。教育的信息技术改革正以惊人的速度与学校的教学融合,改变着教育者的工作方式,改变着学习者的学习模式,网络和教育理念改变让传统教学模式,产生了重大影响。

高校作为一个高素质的学生教育机构,具有很强教学实力,拥有完善设备的实验室、先进的高科技教学环境、丰富的教学经验。为了进一步提升高校教育教学水平,能够培养更高级人才适应于21世纪的社会,,必须创建一个学生老师互动的选课平台。
今天,通过互联网和信息技术,网络课程管理系统,为我们打开了新的选课方向,网络就可以让学生在家进行选课,及时修改,及时反映课程信息,让老师能够第一时间得到学生的选课信息,建立一个新的学习模式。它不仅是现代化教育信息化的需要,也因为它的速度快,易于使用和直观的教育方式深受欢迎教师和学生的欢迎,在教学中扮演着越来越重要的作用。 未来选课系统必定将师生互动作为研究方向,必定将以信息技术与网络技术为基础。这也才能改变教师和学生学习的理念和教育模式,具有信息技术和网络技术的课程管理系统,才是当今世界高等教育课程研究方向的必然趋势。
互联网课程管理模式是基于WEB方式进行的一种现代的选课和学习方式,基于网络的课程管理系统,在空间和时间上的分离,以帮助教师和学生一起完成课程的学习。它能够迅速和有效地满足大学校的教育需求,有多种功能集于一体的计算机,具有开放性,信息密集性和效率性。这样让基于网络的课程管理系统的教育模式比传统的课程管理模式具有明显的优势,主要是网络支持分布式的学习,网络在时间和空间的距离,有一个巨大的范围,并且 WEB技术是跨平台,课程的信息发布和课程的学习,可以实现动态交互,可以随时学习,让学生能更灵活的学习课程。
目前,绝大多数高校正在购买更多的计算机和校园网络环境建设,以及提供必要的硬件支持网络课程管理,所以开发一套网络性、互动性,高效性的课程体系是非常必要的。有了这个平台,任何人都可以任何时候,任何地方,进行学习,得到他需要的课程内容,使学生更好的构建知识,满足学生的个性化,协作学习,以创造更多的教育空间,它也将有效地促进了教育方法改进和信息技术的改革,教学方法和教学模式的创新。

1.2 国内外研究现状

随着信息技术和网络技术的快速发展,越来越多的人以上网为自己的生活方式,如在线聊天,网上学习。互联网如今已经在人们的生活中扮演着重要的角色,现代教育技术也随着网络技术普及而快速的发展,以前很多学校已经给学习者提供了一个很好的学习平台,但是这仅仅是一个很小的方面。比如英语的课程设计,老师首先提出了问题,学生们选择题目,组成的团队,进行的劳动分工,然后老师报告,然后才开始设计。如课程中出现问题,学生就要去找指导老师。在设计过程结束后,各团队就把设计结果呈现给大家,然后老师打分,统计结果存档。整个过程不仅费时费力,效率低下,打击了学生参与的积极性。事实上,国外一些地方不再使用此中方法进行教学了。这些进程可以使用一个Web课程管理系统来实现,使用本系统既节省了时间,又提高了教学效率。

目前,这种系统的研究在各高校并不多,技术上还不是很成熟。国内外各高校都开发了一些此类平台,已经运用于各自的教学方式之中了。有关于网络课程管理系统的软件平台开始协助教学,是出现于96年底,在最近几年更是层出不穷。最具影响力有WBT System 的TopClass 、Lotus 公司的 LearningSpace、英属哥伦比亚大学计算机科学系开发的WebCT (Web Course Tools )、加拿大Simon Fraser大学的Virtual U都在全球发展了一定的用户群,每种软件都至少有10所大学或公司在使用,各开设了上百门课程,授课学生人数均超过5000人次。其中一些产品已进入中国市场,如中国有四所大学在使用Lotus 公司的 LearningSpace,Virtual ,去年也到中国做过宣传。目前大量的网上教学支撑平台还只是大学实验室的产物,处于继续开发或"beta"测试阶段。

中国的网络教育还处于起步阶段。随着信息技术在中国不断的普及,互联网用户增长的规模不断扩大,网络教育社会地位也不断的提升,网络教育使学习者很快的接触到了课程知识。现在有些高等网络教育在中国也通过了教育部是学习者也能通过网络提高自己的学历层次,也能提升我国整体的教育水平。现今有67所高校提供在线教育试点,参加人数也逐年增加。同时,各高校也投入了大量的资金来发展网络课程管理系统,逐步发展网络教育的学习模式,网上教育初具规模。然而,在线教育有许多缺点和不足,我们要在不断地教学进行探索开发出相应信息技术教学系统,不断的完善,使其逐步替代传统的教学方式。面对当今丰富网络资源,尽量开发出高校发布信息与网络连接和网络共享系统,让整个中国教育融为一体,特别是在一个以发展为基础的网络,网络共享成了现在的教学方向,但也需深入的讨论和发挥各高校的资源优势,尽量在网络中体现无疑,更好地利用网络教学为学习者服务,更有效的开展网络教学和网络学习活动。
针对这些缺点,本文作者结合网络课程管理系统的特点与高等职业教育的特殊性,构建一套网络课程管理系统,把学生的选课、在线学习、在线考试、在线答疑、融为一体,充分的发挥学习者学习空间,让平台更好的与学习者互动和协作。

1.3 开发意义

现代社会对学生的专业素质和专业能力要求越来越高,为了满足社会的发展需求和学生的就业压力,学校应当对传统的教学计划和教学手段做出合理的调整。要求教师转变传统的教学观念,从知识传授者到学习帮助者、促进者,改变传统的课堂授课活动,从课堂授课转变网络教学课件制作、网上答疑、网上布置/批阅作业、网上组织学生的自主学习活动、提供学习资源等;要求学生改变传统的学习观点和学习方法,从主要接受教师讲授为主转变为自主学习为主,从以课堂听课为主的学习活动转变为网上听课、课后答疑、讨论、测验练习、浏览相关课外资源、笔记记录等一系列的自主学习活动

为了满足学生的学习需要和学生的个性发展,学校应当建立一个基于校园网络的教学辅助学习平台,在传统教学方式基础上,对教学手段做出适当的补充,因此本文介绍了高校开发的一套网络课程管理系统,本论文从网络课程管理系统的框架结构、网络课程管理系统的功能实现等角度进行了深入的研究,力求通过此系统的研究和建设更好的融合信息化教育教学手段,更好的为现代教学服务,将传统教学与网络教学有机融合起来。

1.4 本文研究的主要内容

本论文开发的网络课程管理系统是从高校教学的实际情况出发,确定了网络课程管理系统的总体框架和基本模块,确定了设计网络课程管理系统所使用的关键技术和系统实现的研究方向,主要以MySQL 6.0数据库为数据库管理系统,使用J2EE为主要开发技术,结合流行的SSH三层框架结构对网络课程管理系统的进整体的设计和建模,基于Web的网络课程管理系统是一个提供系统管理员对后进管理管理,使学生和老师在网上对课程进行学习和交流,实现网络课程教学的开放性、交互性,把学生和老师分为不同的角色,赋予不同的权限,利用统一的身份验证模式登陆系统,获得不同权限,达到安全管理模式,使教学分开,为学生、教师和管理员提供了不同的个性化服务。本网络课程管理系统主要以学习者主体、以教授者为主导的教育模式,在WEB环境下进行教学活动,让学习者和教授者交互式协作学习,实现了现代教育,通过划分系统模块来实现相应功能,即划分为学生端功能模块、教师端功能模块、管理端功能模块三个功能模块。

具体内容如下:

(1) 分析了网络课程管理系统的整体结构;

(2) 对网络课程管理系统整体设计进行需求分析;

(3) 叙述了整个网络课程管理系统设计思想;

(4) 实现了网络课程管理系统的功能模块;

(5) 对系统数据库的安全方式进行了说明;

(6) 本系统具体设计了用户角色的管理、课程的管理、在线学习的管理、在线答疑、并且对教学资源提供下载等功能。

(7) 对完成的部分进行测试运行;

(8) 对系统进行完善、总结。

1.5 本文的组织

第一章绍了本论文的开发背景和研究现状,然后对本文的研究的内容和研究方向进行了概括。

第二章介绍了本论文的相关理论知识和关键技术,主要是分析了现阶段主流技术和SSH框架结构。

第三章以网络课程管理系统的实际情况为主要的出发点,给出了网络课程管理系统需求分析,从网络课程管理系统的面向的对象思想将学生、教师、课程分类,设计了三个功能模块,即学生端功能模块、教师端功能模块、管理端功能模块。

第四章对网络课程管理系统主要模块给出了详细的设计。

第五章给出了系统主要功能模块关键代码,对现实中的难点提出了解决方法。

第六章对网上网络课程管理系统的设计进行总结,并提出系统的不足和对未来的展望。

第二章 相关技术介绍

2.1 SSH三层框架结构

SSH是典型的J2EE三层框架结构,分为表现层、中间层和持久层。三层体系将业务流程、数据访问及信息安全性校验等工作放在中间层处理。客户端不直接与数据库持久层交互,保证了数据库的安全性,而是通过组件与中间层的中间件建立连接,发出数据请求,再由中间层servle中间件与数据库交互,获取数据和管理数据,减少数据修改的随意性,按规定的规则进行访问数据库,增加了数据库的安全性,表现层是使用的现今流行的JSP+Ajax技术,经过多年的发展,此技术搭配得到了广泛的应用,尤其是它的稳定性、安全性、交互性等特点,获得了广大计算机从业人员的肯定,为其作为表现层技术打下了坚实的基础。中间层采用的是Spring AOP代理技术。

其中三层结构的Web层,就是MVC模式里面的“C”,负责控制业务逻辑层与表现层的交互,调用业务逻辑层,并将业务数据返回给表现层作组织表现,该系统的MVC框架采用Struts;Service层(就是业务逻辑层),负责实现业务逻辑。业务逻辑层以DAO层为基础,通过对DAO组件的正面模式包装,完成系统所要求的业务逻辑。DAO层,负责与持久化对象交互。该层封装了数据的增、删、查、改的操作。PO,持久化对象。通过实体关系映射工具将关系型数据库的数据映射成对象,很方便地实现以面向对象方式操作数据库,该系统采用Hibernate作为ORM框架。Spring的作用贯穿了整个中间层,将Web层、Service层、DAO层及PO无缝整合,其数据服务层用来存放数据。持久层就是存放的数据库信息,使用Hibernate技术实例化对象,存为数据。

图2.1 SSH三层框架结构2.2 java体系结构概述

随着JAVA技术的不断发展,SUN公司根据市场的要求进行了进一步的细分为:J2SE、J2EE、J2ME三个版本的技术,本文具体的讲解一下这三个技术。

2.2.1 J2SE技术

JAVA 自正式发布以来,经历了出生、成长和壮大三个阶段,现在已经成为IT领域的主流编程语言,其中J2SE也进过了版本的更新,它为创建和运行JAVA程序提供了最基本的环境。J2SE中主要包含了核心的类和接口,如:图形界面设计、多线程、输入/输出、网络编程、数据库编程等。图2-2为J2SE基本类库结构。
图2-2为J2SE基本类库结构

2.2.1 J2EE技术

J2SE是SUN公司推出的一种全新概念的模型,与传统的互联网应用程序模型有着不可比拟的优势,J2EE平台提供了一个多层结构的分布式应用程序模型,是一种利用JAVA平台来简化与企业解决方案的开发、部署和管理相关的复杂问题的体系结构。J2EE体系结构提供中间层集成框架,用了满足无须太多费用而有需要高可用性、高可靠性以及可扩展性的应用的需求。通过提供统一的开发平台,J2EE降低了开发多层应用的费用和复杂性,增强了安全机制,提高了性能。

J2EE的多层企业级应用模型根据不同服务将中间件切分成许多层,为每种不同的服务提供一个独立的层,图2-3是J2EE典型的三层结构。图2-3是J2EE典型的三层结构

2.3 servlet过滤器

Servlet过滤器是小型的WEB组件,它能拦截请求和响应以便查看、提取或以某种方式操作正在客户机和服务器之间交换的数据。

过滤器提供一种面向对象的模块化机制,用以将公共任务封装到可插入的组件中。这些组件通过一个配置文件来声明,并动态的进行处理。Servlet过滤器用于拦截传入的请求或传出的响应,并监视、修改或以某种方式处理正在通过数据流。过滤器是自包含、模块化的组件,可以将它们添加到请求/响应链中,或者在无不影响应用程序中其他WEB组件的情况下删除它们。

一个servlet程序就是一个在WEB服务器端运行的特殊JAVA类,这个特殊的JAVA类必须实现JAVAX.SERVLET.SERVLET接口,由于SERVLET生命周期中的三个阶段:初始化阶段、响应客户请求阶段和终止阶段,通过这三个阶段来处理客户端的请求,然后发给持久层,可以达到封装客户端的请求信息,然后返回给客户端,使客户端与数据库分离。
图2-4是servlet过滤器的结构

2.4 JSP技术介绍

JSP技术主要用来简化动态网页的开发过程,由于它在形式上和HTML文档比较相似,因此与Servlet相比,用JSP来编写动态网页更加直观。但是,当网页非常复杂时,JSP文件中的打量的HTML标记和JAVA程序片段混杂在一起,会大大消弱JSP代码的可读性和可维护性,而且会增加调试JSP文件的难道。

JSP文件在形式上和HTML文件类似,因此能和HTML文件一样,直观地表达网页的内容和布局。但是jsp本质上是Servlet,因此能和Servlet一样动态生成网页的内容。由于JSP同时汲取了HTML和Servlet的优点,因此能简化创建动态网页的开发过程。

2.5 JDBC和数据源技术的介绍

JAVA数据库编程主要使用JDBC技术,JDBC是一种执行了SQL语句的API。利用JDBC向各种关系的数据库发送SQL语句就变的非常容易的事情了,开发人员只需要编写JDBC语句就可以调用SQL语句了 ,是JAVA编写人员减轻了负担,JDBC封装了与各种数据服务器通信的细节,它具有以下的优点:

简化访问数据库的程序代码,无须涉及与数据库服务器通信的细节。

不依赖于任何数据库平台,同一个JAVA程序可以访问多种数据库服务器。

封装了数据库持久对象,操作数据可对象更简单。

集成了大量的数据库管理API。

JavaWeb应用也可以从数据源中获得与数据库的连接。采用数据源,可以避免每次访问数据库都建立数据库连接,这样可以提高访问数据库的效率。只要在数据源中事先建立了多个数据库的连接,这些数据库连接保存在连接池中。当JAVA程序访问数据库时,只需要从连接池中取出空闲状态的数据库连接,当程序访问数据库介绍后,再将数据库连接放回连接池,这样做可以提高访问数据库的效率。试想如果WEB应用每次接收到客户请求,都和数据库建立一个新的连接,数据库操作结束就断开连接,这样会耗费大量的时间和资源,所以需要建立数据源技术。
图2-5是JDBC数据库访问技术

2.6 spring技术的介绍

Spring是一个轻型容器(light-weight container),其核心是Bean工厂(Bean Factory),用以构造我们所需要的M(Model)。在此基础之上,Spring提供了AOP(Aspect-Oriented Programming, 面向层面的编程)的实现,用它来提供非管理环境下申明方式的事务、安全等服务;对Bean工厂的扩展ApplicationContext更加方便我们实现J2EE的应用;DAO/ORM的实现方便我们进行数据库的开发;Web MVC和Spring Web提供了Java Web应用的框架或与其他流行的Web框架进行集成。

Spring是一个轻量级(大小和系统开支的角度)的IoC和AOP容器.它力图简化J2EE开发即J2EE without EJB.而且作为帮助企业级开发的核心支柱,Spring为模型层(OR持久层:Hibernate、JDO、iBatis等)服务层(EJB、JNDI、WebService)以及表现层(struts、JSF、Velocity)都提供了良好的支持和集成方案。主要是通过配置实例化对象,不需要不断的创建对象了。

在Spring中如何对对象进行管理:依赖配置文件

(1)wiring的过程:任何需要交给Spring管理的对象,都必须在配置文件中注册,这个过程被称为wiring。

(2)最终的效果:可以在不重新编译代码的情况下,改变系统行为。

由于基于Spring的应用是依赖配置文件组织起来的,这意味着我们所编写的程序,更多的是在完成具体的功能而各个功能之间的串连,就要靠配置文件了----随之而来的一个好处就是,我们可以在不重新编译代码的情况下,改变系统行为。

2.7 Ajax技术的介绍

AJAX全称为“Asynchronous JavaScript and XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术 ,是基于XHTML的应用,使用 DOM(Document Object Model)进行动态显示及交互、使用 XML 和 XSLT 进行数据交换及相关操作、使用 XMLHttpRequest 进行异步数据查询、检索、使用 JavaScript 将所有的东西绑定在一起 。大大提高交互性,避免无意义的整体页面刷新,理论上可以开发出任意复杂度的界面,可以完成任意复杂度的交互。充分利用java的开发优势和后台的servlet交互,可以交互任意数据,不局限于简单的请求和相应前台缓存方案减轻服务器和网络压力。

Ajax技术的生命周期经历了以下六个阶段:

1. 用户向WEB浏览器提出访问请求。

2. WEB服务器将JSP页面通过Servlet容器解析成HTML页面传送给用户。

3. 浏览器根据所收到的jsp代码,创建DOM树状结构和代码。

4. 用户触发异步请求发给WEB服务器,并不会影响既有的DOM树状结构。

5. 浏览器将XML格式数据传送给原本页面中的JavaScript函数进行处理。

6. 浏览器解析结果,接着更新内存中的DOM树状结构,此时页面部分内容会被更新,而非刷新,所以浏览器画面不会闪烁,而是非常快的显示出来。

Ajax实际上是一个客户端Javascript技术,通过Ajax可以实现客户端与服务器之间的异步通信。Ajax的一个最大的特点是无需要刷新页面便可以向服务器传输或读写数据,这一个特点主要得益于XMLHTTP组件XMLHTTPREQUEST对象,另外还需要使用DOM对象技术来实现数据的交互,它是与平台和语言无关的接口。

为了协助开发人员轻松创建出Ajax类型的页面应用程序,SUN公司特别推出了jsp+ Ajax的框架模式,JSP+ Ajax是一个全新的页面开发技术,它将全新的客户端脚本函数库与jsp既有的服务器端架构整合在一起。JSP+ Ajax所提供的客户端页面开发平台与tomcat服务器端页面开发平台是完全相同的,此完全集成了服务器端开发工具、功能与服务。

Ajax技术解决了传输中的冗余信息,加快了客户端和服务器之间的交互速度,改善用户体验,在传统的web应用中,如果要传输改变一块小信息,就必须改变整个页面的信息,传输给服务器,然后由服务器解析在传给客户端,重复传输大量信息。然而使用Ajax应用程序只需要改变那一小块的信息量,传给服务器,大大降低了网络的负载,加快客户端的访问。图2-6 Ajax动态网页访问技术
2.8 Tomcat服务器介绍

Tomcat是SUN公司的JSWDK的基础上发展起来的一个优秀的Servlet的容器,Tomcat本身完全用JAVA语言编写。Tomcat是Apache开源软件组织的一个软件项目,作为一个开源代码的软件,Tomcat得到了广大开放源代码志愿者的大力支持,它可以和目前大部分的主流WEB服务器一起工作。Tomcat运行稳定、可靠,并且效率高。

Tomcat除了能够充当运行Servlet的容器,还提供了作为WEB服务器的一些实用功能,如Tomcat管理和控制平台、安全域管理和Tomcat阀等。Tomcat已成为目前开发企业JAVAWEB应用的最佳Servlet容器选择之一。

Tomcat本身由一系列可配置的组件构成,其中核心组件是Servlet容器组件,它是所有其他Tomcat组件的顶层容器,Tomcat作为Servlet容器,有有以下3种工作模式。

(1)独立的Servlet容器:Tomcat作为独立的WEB服务器单独运行,Servlet容器组件作为WEB服务器中的一部分而存在,这是Tomcat的默认工作模式。

(2)其他WEB服务器进程内的Servlet容器:在这种模式下,Tomcat分为WEB服务器插件和Servlet容器组件两部分。Web服务器插件在其他WEB服务器进程的内部地址空间启动一个JAVA虚拟机,Servlet容器组件在此JAVA虚拟机中运行,如有客户端发出调用Servlet的请求,WEB服务器插件获得对此请求的控制并将它转发给Servlet容器组件。进程内的Servlet容器对于单进程、多线程的WEB服务器非常适合,可以提供较高的运行速度,但缺乏伸缩性。

(3)其他WEB服务器进程外的Servlet容器:在这种模式下,Tomcat分为WEB服务器插件和Servlet容器组件两部分,WEB服务器插件在其他WEB服务器的外部地址空间启动一个JAVA虚拟机进程,Servlet容器组件在此JAVA虚拟服务器中运行。如果客户端发出调用Servlet的请求,WEB服务器插件获得对此请求的控制并将它转发给Servlet容器组件。进程外Servlet容器对客户请求的响应速度不如进程内Servlet容器,但进程外容器具有更好的伸缩性和稳定性。当Tomcat作为独立的Servlet容器来运行时,可以看作是能运行Servlet的独立WEB服务器。此外,Tomcat还可作为其他WEB服务器进程内或者进程外的Servlet容器,从而与其他WEB服务器集成。图2-7 Tomcat服务器工作方式2.9 WEB运作原理

2.9.1 WEB介绍

www(world wide web 万维网)由遍布在互联网中的web服务器和安装了web浏览器的计算机组成,它是一种基于超文本方式工作的信息系统。作为一个能够处理文字,图像,声音,视频等多媒体信息的综合系统,它提供了丰富的信息资源,这些信息资源以web页面的形式分别存放在各个web服务器上,用户可以通过浏览器选择并浏览所需的信息。

2.9.2 Web服务器

安装了web服务器软件的计算机就是web服务器。web服务器软件对外提供web服务,供客户访问浏览,接收客户端请求,然后将特定内容返回客户端。

Web服务器的工作流程是:用户通过web浏览器向web服务器请求一个资源,当web服务器接收到这个请求后,将替用户查找该资源,然后将资源返回给web浏览器。图2-8 Web服务器的工作流程图:
图2-8 Web服务器的工作流程图
2.9.3 Web客户端

Web客户端:通常将那些凡是向Web服务器请求获取资源的软件称为Web客户端。

Web客户端的工作流程是:用户点击超链接或在浏览器中输入地址后,此时浏览器将该信息转换成标准的HTTP请求发送给Web服务器。当Web服务器接收到HTTP请求后,根据请求内容查找所需信息资源,找到相应资源后,Web服务器将该部分资源通过标准的HTTP响应发送回浏览器。最后浏览器接收到响应后将HTML文档显示出来。图2-9 Web客户端的工作流程图。
图2-9 Web客户端的工作流程图
2.10 struts工作原理

2.10.1 struts介绍

Struts是一个基于Sun J2EE平台的MVC框架,主要是采用Servlet和JSP技术来实现的。由于Struts能充分满足应用开发的需求,简单易用,敏捷迅速,在过去的一年中颇受关注。Struts把Servlet、JSP、自定义标签和信息资源(message resources)整合到一个统一的框架中,开发人员利用其进行开发时不用再自己编码实现全套MVC模式,极大的节省了时间,所以说Struts是一个非常不错的应用框架。

Struts是作为Apache Jakarta项目的组成部分。该项目的目标是为建立Java web 应用程序而提供的一个开源框架,目前大家一般使用的版本为1.1,但也出现了1.2。通过使用struts 框架可以改进和提高Java Server Pages (JSPs)、Servlet、标签库以及面向对象的技术在web应用程序中的应用。应用Struts框架可以减少你应用MVC(Model- View -Controller)设计模式的开发时间,从而提高开发效率。把Struts应用于J2ee客户端,应该是一个不错的选择。

2.10.2 工作原理

说到Struts,我们就不得不提到MVC设计模式。MVC即Model-View-Controller的缩写,它是web应用当中的常用的设计模式。MVC 减弱了业务逻辑接口和数据接口之间的耦合,以及让视图层更富于变化。

Struts是MVC的一种实现,它很好的结合了Jsp,Java Servlet,Java Bean ,Taglib等技术。那么我们来看看Struts框架的工作原理:

控制:在Struts中,ActionServlet起着一个控制器(Controller)的作用。ActionServlet是一个通用的控制组件。这个控制组件提供了处理所有发送到Struts的HTTP请求的入口点。它截取和分发这些请求到相应的动作类(这些动作类都是Action类的子类)。另外控制组件也负责用相应的请求参数填充 Action Form(通常称之为FromBean),并传给动作类(通常称之为ActionBean)。动作类实现核心商业逻辑,它可以访问java bean 或调用EJB。所有这些控制逻辑利用Struts-config.xml文件来配置。

视图:主要是由Jsp来控制页面输出的。它接收到Action Form中的数据,利用html,taglib,bean,logic等显示数据。

模型:在Struts中,主要存在三种bean,分别是:Action,ActionForm,EJB或者Java Bean。ActionForm用来封装客户请求信息,Action取得ActionForm中的数据,再由EJB或者Java Bean进行处理。
图2-10 struts工作原理
2.10.3 优点与缺点

优点:1.利用Struts提供的taglib可以大大节约开发时间。2. 表现与逻辑分离。 3.维护扩展比较方便。4.便于团队开发

缺点:大量的使用标签,对于初学者难度较大。

2.11 小结

本章主要是介绍了系统的相关的技术,主要包括:面向对象JAVA技术、Tomcat服务器 、JDBC数据库技术、Ajax、WEB工作原理、Struts工作原、Spring技术、JSP技术等进行了介绍,结合他们的优缺点,为本系统选定了雄厚的技术后盾,搭建SSH框架,是本系统更稳定、更安全、更有效率。 第三章 网络课程管理系统的需求分析

3.1 网络课程管理系统概述

3.1.1 传统的课程管理

传统的课程管理是老师根据教材写出教案,再根据教案的进度在教室里,对学生面对面的授课。学生根据课堂面授理解老师的讲课内容,当理解有问题时,通过举手咨询进一步弄清课程讲解的问题。每当一个老师要学生完成作业时,都是通过课后布置作业,让学生回到家里自己完成作业,然后下次上课时交给老师,老师再批改作业后,才能了解学生接受知识的水平,这样一个过程又漫长又没有互动,不能及时处理学生学习中所遇到的问题,这样就形成了一种被动的教学关系,达不到更好的学习效果。如图3.1所示:
图3.1 传统课程管理教学

传统的课程管理教学中,学生不能根据自己身情况和爱好来选择课程和老师。但是当今社会竞争的日益加剧,企业对学生的自我学习的素质要求越来越高,传统的课程管理教学就不能完全的满足企业都学生自学素质的要求了。想要解决这一个局面,本文就提出了基于网络课程管理的系统。

3.1.2 网络课程管理系统

网络课程管理系统,也被称为现代远程教育技术,在现代信息技术的发展过程中,逐步出现了这种新的培训方式,它以构建终身教育体系为主要载体,向知识经济时代的人们提供了随时学习的平台。当今计算机技术,多媒体技术,网络信息技术,已经成为各个高校主要教学方法或辅助教学工具,利用这种集中了图像,文字,动画,音频,视频和其他互动式的在线教育,使学习者能够得到更好的学习环境。
网络课程管理系统是网络高速发展的产物,在计算机和网络的大力支持下,使课程教学分布到世界各个角落,普及到各行各业。不断的影响着传统的教学模式的改革,必将成为新世纪教育的主流模式。
网络课程管理系统模式并不是一个面对面的教学模式,它是通过计算机和网络为传播介质,以快速、高效、经济的方式满足人们的学习需求。

3.1.3网络课程管理系统的优势

基于Web的网络课程是当今最流行的教育理念。相比与传统的教育观念,引入网络课程从根本上改变原有的教育体制,网络课程的优势在以下五个方面:
1.教育主体的改变,把以前以教师为中心的教学体制转变成为以学生为中心。无论那种课程感兴趣的学生,同能通过自己的喜好来选择课程学习,并且可以在不同时间和不同的地点的完成自己的学业,,最大限度地发挥网络教育的优势,以扩大培训范围,使学生对知识的渴望和自我学习能力达到满足,这种优势是在面对面教学的课程中完成的。信息化网络课程学习使“按需学习”已变成可能,实现了个性化学习。由于以往教育是规定了统一学习时间,授课手段单一,统一安排学习,严重的妨碍了学生个性发展,达不到因材施教的结果。这是不利于教育系统的改革和发展,教育的质量得不到提高。但基于网络的课程学习技术,是现代远程教育技术达到一定高度所发展起来的,突破了教育时间限制,地域的限制,网络课程覆盖任何角落,学生可以安排自己的时间到互联网学习。是现在教育理念的到贯彻和执行,是学习者更容易学习和得到更多的乐趣。

2.教学形式变化多样。原来的单一类型教学,变成如今的多样化的教学,原有的在课堂上面对面教学到,交互性教学,使教学方式发生了本质的变化,一个交互计算机网络,要求用户进行相互交互,以多媒体网络课程系统的教学和学习,解决了学生与学校之间的隔距,给他们提供了交流和讨论的互动平台。网络课程系统设置一个“在线讨论”模块,提供电子邮件,发言版等,使得学生之间的达到相互交流,也使教师和学生讨论教学过程中的问题,专注于及时解决问题,并提供实现自我测试系统,解决动态控制学习,还可以让老师在不同的区域域机构共同备课,异地实施教育。
3.课程知识的创造力。创新核心的文化,集中意识的转变。在互联网时代,“信息”或“知识”已成为社会生产力和社会发展的最重要组成部分,建立在此基础上,利用信息,对于人的教育产生影响,使用信息和创造信息的能力是最重要的,在网络时代是一个很好的机会和手段,为此,在线教育,网络课程学习和现代信息技术相结合,达到了课程知识能力的创新,不断提高课程的新鲜度。
4.教学方法和多媒体结合。传统的教学方法,在课堂上面授,只有上讲解,不能图文并茂,但网络教学是基于文本和图像,以传播知识和信息,在电脑上展现给学习者,比传统的老师在教室的使用黑板,粉笔传播知识更丰富。教学方法在时间、空间上只有通过网络教学才能体现的更立体和更多维空间的教学效果。传统课程设置,时间有限,信息的数量是有限的供应。但功能强大的工具应用多媒体技术可以解决上述问题。

5.教学资源可以随时下载,教学资源从封闭走向开放不停的过渡。教师短缺,资源有限,缺乏资金,是最重要的因素之一,影响中国高等教育的普及,多媒体网络课程是有力的补充,教育资源不但的更新,让学习者学到更新的技术,它已经成为一个大的趋势。

3.2 需求分析

3.2.1 项目总体结构

基于网络的课程管理系统的总体设计目标是为教师和学生提供一个课程管理平台。学生可以通过该系统快速地选择自己喜欢的课程;教师可以通过该系统查看自己所授课程的选课情况;系统管理员可以根据需要对学生、教师、班级等信息进行维护。为了满足上面提出的功能要求,基于网络的课程管理系统需要达到以下目标。

1.学生登录系统后可以进行课程选择,并且可以查看教师已经给出的某门课程的成绩,此外学生还可以更改自己的个人信息。

2.教师登录系统后拥有是否接受学生选择自己所教授的课程,以及给选择自己教授的课程的学生打分的权限。

3.系统管理员登录系统后可以修改系统中的全部信息,包括学生、教师、课程以及班级的等信息。

3.2.2 用户身份级别功能分析

不同身份的用户对系统的使用权限有所不同。系统管理员登录后可以对教师、班级和学生等系统信息进行修改,教师登录后可以查看选课情况并给出学生课程的成绩,学生登录后可以进行选课并查看自己某门课程的成绩。其功能如图3.2用户身份级别
3.2.3 教师模块功能分析

教师在本系统中拥有是否接受学生选课申请,以及给学生打分的权限,只有先接受学生的选课请求,才能给该生打分。首先,教师登录后可以查看有哪些学生选择了自己所教授的课程,然后系统会列出该教师所带课程的班级,系统还会列出选报了该课程的所有学生(其中包括了该生的一些详细情况),在教师选择好学生以后,在这门课程结束时可以给出所有选择这门课的学生的成绩,在这之后系统会分析教师的输入是否正确,否则提示输入错误。其次,在教师给出了学生某门课程的成绩之后,系统会根据成绩来判断该生是否通过了该课程,如果该成绩大于或等于60分,则在该生的学分上加上该课程的学分。其功能如图3.3教师模块功能

3.2.4 学生模块功能分析

学生登录后,可以选报课程。系统会根据学生所在系及课程的预修课判断学生是否具备条件。首先系统会列出所有满足该生系别以及该生还未选报的课程,和其预修课为“PUBLIC”的公选课。如果该生选报了未满足预修课要求的课程,系统会有相关的错误提示。其次学生可以查看自己的成绩,包括该生已选课程的名称,学分以及该生的总分。如果教师还未给出成绩,则系统会有相关提示。此外该生可以更改自己的个人信息,包括密码,电话号码等,其中要求密码不能为空。其功能如图3.4学生模块功能

3.2.5 管理员模块功能分析

管理员在本系统中拥有最高的权限,包括了修改学生、教师、课程以及班级信息。根据功能模块把学生、教师、课程、班级联系在一起,根据不同的要求可以改变功能模块,具有以下的功能。

修改学生信息、删除学生信息、添加学生信息、修改学生权限。

修改课程信息、删除课程信息、添加课程信息、修改课程信息权限。

修改教师信息、删除教师信息、添加教师信息、修改教师权限。

修改班级信息、删除班级信息、添加班级信息、修改班级权限。

修改角色信息、删除角色信息、添加角色信息、修改角色权限。

3.2.6 其它功能模块分析

基于网络的课程管理系统还包括在线学习、离线学习、学习心得发表、在线讨论、学习时间查询、资源下载,这些功能需求包括:

1.栏目分类(课程分类):基本知识,党课讲座,经典著作,电教片,返回首页;

2.学习首页:必学课程,选学课程,学习心得,下载学习,搜索课程,我的课程;

3.后台管理(管理员):在线学习管理,离线学习管理,上传课件,学习管理,学习心得管理,帐号管理,帐号注册;

4.系统设置:系统帮助,修改密码,注销系统,退出系统;

系统由一个登录界面登录,在登录时是如果是学生,则用户名为考生学号,如果是管理员登录,用户名为管理员名,分别从数据库中查询帐户,并核对登录密码,然后根据不同的角色进入不同的界面。3.2.7系统建设目标

1.支持用户注册管理,修改、删除、添加用户。

2. 根据登录权限的管理,进入不同的学习界面。

3.根据不同的角色,获得课程信息。

4. 计入课程信息页面,开始学习。

5.根据不同的角色,判断是否可以下载资源到本地计算机学习。

6.学员在线发布自己的学习心得、修改自己的学习心得、添加学习心得。

5.学员还可以查看自己的学习过程。

6.方便教师发布学习课程。

7.教师可以及时、准确的了解学员学习课程的时间。

8.教师可以及时查看学生发表的学习心得。

9.方便管理帐号和帐号权限。

3.2.8 系统功能及流程

网上学习系统主要的流程如下:

1.根据用户帐号,自动识别帐号权限,显示不同页面。

2.帐号权限分为管理员和学员。

3.管理员可以修改、上传、查询、删除课程。并可以管理学员资料、学习心得。

4.学员可以在线学习课程、下载学习课程、发表学习心得。

5.在线学习都以视频、文档、录音形式为主。

6.离线学习都以打包的学习资料为主。

7.课程的“课程分类”字段,用于区别课程的分类。

8.学习时间均以分钟为单位。

9.学习管理显示课程的学习人数以及学习时间。

10.每个课程都有“查看”按钮,用于查看本课程有多少位学员学习过,每位学员各学习了多少时间。

系统业务流程图如图3.5所示:
图3.5 系统流程图

3.2.9 系统角色分析

系统角色分析如图3.6所示:
图3.6系统角色分析图

3.3 小结

该系统的需要分析发挥了非常重要的作用,在开发的整个系统的过程中,需求分析是根据用户的提出的需求,设计系统的整体功能模块,以帮助用户以解决业务问题,模块通过用户行为问题的分析、业务流程的分析,规划系统的功能,紧密的联系到用户的日常工作之中,并为后续系统的规划和实施奠定了基础。本系统根据网路课程管理的特点,设置出系统的需求,满足各层学生的学习,使用该系统的各自作用的分析,设置出系统功能。第四章 系统详细设计

4.1系统网络技术的结构

网络课程管理系统的网络技术结构如图4.1所示:
图4.1系统网络技术的结构
网络课程管理系统的网络技术结构分为以下几个方面:
MySql数据库:数据库服务器在机房提供。所有的数据是被存储在数据库服务器。该数据库是根据JDBC API访问EJB或服务程序调用。该系统采用的数据库服务器使用的是MySql6.0。
web服务器是:采用的是Tomcat服务器,使用的是J2EE的EJB平台模块,封装了控制层,转发用户的请求信息。
浏览器:在每一个部门使用的终端电脑接入校园网络,并进入系统。在Web应用程序中,用于传输通过一个网络浏览器的用户界面。使用浏览器进入本系统。

4.2 系统模块设计

组成“网络课程管理系统”的主要软件功能模块及其与数据库之间的关系如图4.2所示:
图4.2系统模块设计

4.2.1 系统模块划分

本系统可分为四个个主要功能模块,这四个功能模块分别为:

1. 学生功能模块:学生功能模块可以修改学生信息、可以注册学生信息、具有登录功能、进入课程系统学习、在线选课、在线讨论、查看讨论的信息、编写学习心得、查看学习心得,修改学习心得,系统还会统计学生在线学习时间。

2. 管理员功能模块:该模块可以管理员学生的登录、管理员教师的登录、管理学生信息(包括修改、删除、添加)、管理教师信息(包括修改、删除、添加)、课程的管理(包括修改、删除、添加)、资源的管理(包括修改、删除、添加)、学习时间管理、在线讨论的管理(包括修改、删除、添加)、学习心得的管理(包括修改、删除、添加)、班级的管理(包括修改、删除、添加)。

3. 教师功能模块:该模块可以管理员教师的登录、管理教师信息(包括修改、删除、添加)、设置课程的管理(包括修改、删除、添加)、资源的管理(包括修改、删除、添加)、在线讨论的管理(包括修改、删除、添加)、学习心得的管理(包括修改、删除、添加)。

4.班级功能模块:该模块可以管理班级的信息(包括修改、删除、添加)、设置课程的管理(包括修改、删除、添加)。

该系统由统一的界面登录,在登录时判断角色的权限,如果角色是学生,则进入学生界面,进入学习;如果是管理员登录,则进入管理员界面,进行管理;如果是教师登录,则进入教师界面,对课程进行管理、班级管理;分别从角色中进行比对,并核对登录密码,进入不同的界面。系统模块划分如图4.3所示:
图4.3 系统功能模块划分

4.2.2 整体结构设计

本部分介绍了网络课程管理系统的整体结构设计,主要包括了登录模块的设计,教师管理模块设计、学生功能模块的设计、管理员功能模块的设计。该系统整体结构设计如图4.4所示:
图4.4 整体结构设计

4.2.3登录模块设计

该系统由统一的界面登录,登录界面上包括用户名,密码框输入密码;点击登录后,根据帐号到数据库中查找相应的权限,来判断该用户是管理员、学生、还是教师。

系统数据库从相应的数据库表中查询相应的用户,如果能够查询到,则进入,如果没有查询到,则弹出出错信息,由用户再重新登录。如图4.5 用户登录流程、图4.6登录界面。图4.5 用户登录流程图
图4.6登录界面

4.2.4 课程模块设计

学生登录成功之后,进入相应的学习界面,选择相应的课程进行学习后,就打开学习页面,系统就触发了系统计时模块功能,记录学生学习的时间。下图主要提供了学生选择课程的功能,点击课程信息进入不同的课程学习页面。学生选择课程页面如图4.7、图4.8所示:
图4.7 选择课程界面
图4.8 学生学习界面

4.2.5 管理员模块设计

管理员经过登录界面登录后进入管理员管理界面面,该界面可以查看学生信息管理进行管理(包括修改、删除、添加)、课程管理(包括修改、删除、添加)、教师管理(包括修改、删除、添加)、上传课件(包括修改、删除、添加)、角色管理(包括修改、删除、添加)、学习心得管理页面(包括修改、删除、添加),如图4.9、图4.10所示:
图4.9 管理员菜单
图4.10 课件管理界面

4.3 数据库设计

4.3.1 数据库需求分析

该网络课程管理系统的数据库功能主要是建立个对象的关系,并对各种对象信息,提供查询、更新和保存等操作,包括对学生信息提供增、删、改、查操作;对教师信息提供增、删、改、查操作、课程信息;对课程信息提供增、删、改、查操作;对班级信息提供增、删、改、查操作;对学习心得信息提供增、删、改、查操作;对各对象形成关系表,相互联系。

对上述系统功能的分析,可以建立以下数据表:

1. 角色权限数据表

2. 学生信息数据表

3. 教师信息数据表

4. 班级信息数据表

5. 课程信息数据表

6. 学习心得数据表

4.3.2 数据库数据表设计

在设计数据库表时首先要确定系统的个对象之间的关系,并根据数据库中的数据设计需要,建立数据表之间的关系模式,本系统采用MySql 6.0数据库。MySql 6.0数据库数据库易于使用,存储的数据量也比较大,开发企业级系统的是首选的系统。该数据库是一个表的集合,根据对象模型,以确定数据库中的表的结构和信息,网络课程管理系统包含很多表,包括表设计如下:

1. 学生信息表

学生信息表用于记录学生的个人信息。包括的字段及数据类型见下表所示。其中表字段“zhangh”作为主关键字,惟一的标识一个学生信息。学生信息表结构见表3.1所示:

表3.1 学生信息表xuesheng

列名

数据类型

大小

允许空

主键

说明

ZhangH

varchar

10





帐号

XingM

varchar

20





姓名

MiM

varchar

20





密码

Tel

varchar

20





电话

qx

varchar

20





权限

RenYFL

varchar

20





人员类别

DanW

varchar

20





单位(班级)
2. 课程信息表

课程信息表用于记录课程的基本信息。包括的字段及数据类型见下表所示。其中表字段“id”作为主关键字,惟一的标识一个课程信息。课程信息表结构见表3.2所示:

表3.2 课程信息表KeC

列名

数据类型

大小

允许空

主键

说明

id

int




课程ID

MingC

varchar

50





课程名称

KeCLB

varchar

50





课程类别

NeiRLB

varchar

50





内容类别

ZuoPLB

varchar

50





作品类别

KeCDZ

varchar

500





课程地址

ShiJ

datetime




发布时间
3. 学习时间统计表

学习时间统计表用于记录在线的学习时间的统计信息。包括的字段及数据类型见下表所示。其中表字段“id”作为主关键字,惟一的标识一个在线学习的统计信息。学习时间统计表结构见表3.3所示:

表3.3 学习时间统计表tj

列名

数据类型

大小

允许空

主键

说明

id

int




ID

ZhangH

varchar

10





学员帐号

kcbt

varchar

50





课程标题

xxsj

int




学习时间

4. 离线学习课程信息表

离线学习课程信息表用于记录离线学习课程的基本信息。包括的字段及数据类型见下表所示。其中表字段“id”作为主关键字,惟一的标识一个离线学习课程统计信息。离线学习课程信息表见表3.4所示:

表3.4 离线学习课程信息表XiaZ

列名

数据类型

大小

允许空

主键

说明

id

int




ID

MingC

varchar

50





课程名称

LeiX

varchar

50





类型

ShiJ

datetime

50





发布时间

DiZ

varchar

50





地址
5. 学习心得信息表

学习心得信息表信息表主要是记录学员在论坛中发布的学习心得。包括的字段及数据类型见下表所示。其中表字段“id”作为主关键字,惟一的标识一个学习心得统计信息。学习心得信息表结构见表3.5所示:

表3.5 学习心得信息表XueXXD

列名

数据类型

大小

允许空

主键

说明

id

int




ID

biaot

varchar

50





标题

neir

varchar

300





内容

shij

datetime




发布时间

fabr

varchar

50





发布人
6. 教师信息表

教师信息表用于记录教师的个人信息。包括的字段及数据类型见下表所示。其中表字段“zhangh”作为主关键字,惟一的标识一个学生信息。学生信息表结构见表3.1所示:

表3.6 教师信息表jiaoshi

列名

数据类型

大小

允许空

主键

说明

ZhangH

varchar

10





帐号

XingM

varchar

20





姓名

MiM

varchar

20





密码

Tel

varchar

20





电话

qx

varchar

20





权限

RenYFL

varchar

20





人员类别

DanW

varchar

20





单位(班级)
7. 班级信息表

班级信息表用于记录班级的信息。包括的字段及数据类型见下表所示。其中表字段“id”作为主关键字,惟一的标识一个班级的信息。班级的信息表结构见表3.1所示:

表3.7班级的信息表banji

列名

数据类型

大小

允许空

主键

说明

id

varchar

10





班级号

XingM

varchar

20





班级名

xibu

varchar

20





系部名

8. 上传课件地址表

上传课件地址表用于记录视频网络地址的信息。包括的字段及数据类型见下表所示。上传课件地址表结构见表3.6所示:

表3.8 上传课件地址FTP

列名

数据类型

大小

允许空

主键

说明

Diz

varchar

50





FTP地址

4.4 系统应用环境

硬件环境:

服务器使用的Web服务器(四核主频2.0GHz以上,内存16G以上,硬盘4tb以上,1000M网卡),客户端使用普通PC机即可,具有网络连接。

软件环境:

服务器端:网络服务器采用的 Windows Server 2008企业版操作系统,java ssh框架,tomcat 6.0版本。数据库管理系统采用MySql 6.0。

客户端:采用网页浏览器。

4.5 小结

本章主要介绍了网络课程管理系统详细设计,设计出系统的主要功能模块,给出各模块功能的详细的介绍,详细的设计方法,给出数据库设计,完成系统的整体设计,为系统的实现奠定了基础。第五章 网络课程管理系统的实现

5.1 开发环境

1.网络服务器

开发语言:java 面向对象语言

操作系统:Windows Server 2008企业版

Web服务器:tomcat 6.0

2.数据库软件

MySQL 6.0

3.用户端计算机

操作系统:Windows系列操作系统

浏览器:IE 6.O以上

分辨率:1024×768

5.2 功能详细设计

5.2.1 登录实现

所有用户都从本模块登录,点击登录后,根据帐号到数据库相应的表中查询用户名和密码,如查询到,则进入相应的页面,如未查询到,则弹出出错信息,用户点重新登录输入用户和密码。

用户登录的代码如图5.1所示:

5.2.2 学习页面的实现

打开学习页面就立即播放视频课件,系统同时记录学生的学习时间。在播放视频期间,若是长时间不移动鼠标或按动键盘则停止计时,并退出系统。

学习计时页面代码如图5.2所示:

5.2.3 学习心得管理页面的实现

打开学习心得管理页面,点击标题可以查看学生编写的学习心得,可以跟具学习心得的标题、内容和发表人来查询学习心得。管理员可以修改和删除学习心得。

学习心得代码如图5.3所示: EMBED Visio.Drawing.11

图5.1 登录代码 EMBED Visio.Drawing.11

图5.2 计时代码
EMBED Visio.Drawing.11

图5.3 学习心得代码
5.2.4 学生信息管理页面的实现

打开学生信息管理页面,便可管理系统的所有帐号。可以对帐号实现,增加、修改、删除、查询。学生信息管理页面部分代码如图5.4所示:
EMBED Visio.Drawing.11

图5.4 学生信息管理代码

5.2.5 课件管理页面的实现

打开课件管理页面,便可管理系统的所有课件。可以对课件实现,增加、修改、删除、查询。课件管理页面部分代码如图5.5所示:

EMBED Visio.Drawing.11

EMBED Visio.Drawing.11

图5.5 课件管理代码
5.3 关键技术实现

5.3.1 ssh 三层框架模式中设计模式的设计

(1)WEB系统的三层体系结构

系统的三层体系结构如图5.6。

SHAPE \* MERGEFORMAT



图5.6基于Java技术的Web应用体系结构
整个管理信息系统采用Browser/Web/DataBase的三层体系结构。Web服务器接受请求,通过应用程序服务器执行一个Java服务器端小程序Servlet并返回其输出,从而实现与客户机进行信息资源的交互。数据库服务器用来存储管理信息系统中所用到的各种数据。系统的客户端只需要一个浏览器即可。

(2)设计模式

设计模式是面向对象的程序设计人员用来解决编程问题的一种形式化表示。目前,在大多数Browser/Server结构的Web应用中,浏览器直接通过HTML或者JSP的形式与用户交互,响应用户的请求。虽然很直观,但是大多数管理信息系统操作的数据量都是惊人的,随着代码的增多会使JSP页面臃肿不堪,Web服务器的负荷过重。因此,在中间层上采用基于模型视图控制器(MVC.Model-View-Controller)的设计模式。

Model层用来实现业务逻辑,View层用来显示用户界面。

Controller层主要负责View层和Model层之间的控制关系。

具体实现时,把Servlet用作应用程序的控制器,把JSP文档作为视图,JavaBeans被用来表示模型。所有的请求都被发送给作为控制器的Servlet,它接受请求,并根据请求信息将它们分发给适当的JSP来响应。同时,Servlet还根据JSP的需求生成JavaBeans的实例并输出给JSP环境。JSP可以通过直接调用方法或使用UseBean的自定义标签得到JavaBeans中的数据。这种设计模式很好地实现了数据层与表示层的分离,使开发工作更加容易和迅速。在这种设计模式下,各层次之间的数据传递如下图5.7。 HTTP请求 获取数据转交 请求
文档输出 更新模型图5.7 MVC设计模式的数据传递图
(3)数据存取技术

数据库是管理信息系统的核心内容。目前,Web与数据库接口技术有很多,其中JDBC是Java程序连接和存取数据库的应用程序接口,由一组用Java语言编写的类与接口组成,是执行SQL语句的Java API。

在数据的存取方面,采用了 JSP/Servlet+JDBC的技术,即客户端不产生数据库查询命令,客户端上的浏览器通过URL和中间层的Web服务器建立连接。Web服务器主要负责接收本地或远程浏览器的HTTP数据请求,然后中间层的Servlet收到请求后,通过执行程序中的SQL语句,利用JDBC提供的标准API对数据库进行访问和相应的操作处理。Servlet再将查询的数据传给JSP,最后生成标准的JSP页面将结果返回给提出请求的浏览器。这样,不仅将客户端与数据库服务器端分开,同时提高了数据库的访问效率。

5.3.2 Web引用

在本系统中如课程资源模块,系统管理员、系统教师、系统学生都可以访问,可作为公共的模块,节省编写代码的时间,减轻编程人员的工作量,尽量避免重复性的劳动。所以我们要设计该系统Web服务层,将Web服务层公共代码设计到服务器配置表中,将这些服务配置为本地引用,设置Web Service的配置。

5.4 小结

本章限于篇幅,给出了系统部分主要功能模块的实现和部分实现代码。分析并解决了在线学习中的“查询”模块、在线学习中的“时间统计”模块等在系统实现过程中的解决方法。并且把所有程序都调试通过,经试用,取得了良好的实际应用效果。
第六章 结论

经过不懈努力,本课题从教学理论的研究、系统的需求分析、设计到具体的开发和实施,经历了较长的时间。经过认真地分析、测试,证明本系统基本上满足了设计要求,已经达到了预期的各项基本功能要求。完成了系统的四个主要功能模块。

1. 学生功能模块:学生功能模块可以修改学生信息、可以注册学生信息、具有登录功能、进入课程系统学习、在线选课、在线讨论、查看讨论的信息、编写学习心得、查看学习心得,修改学习心得,系统还会统计学生在线学习时间。

2. 管理员功能模块:该模块可以管理员学生的登录、管理员教师的登录、管理学生信息(包括修改、删除、添加)、管理教师信息(包括修改、删除、添加)、课程的管理(包括修改、删除、添加)、资源的管理(包括修改、删除、添加)、学习时间管理、在线讨论的管理(包括修改、删除、添加)、学习心得的管理(包括修改、删除、添加)、班级的管理(包括修改、删除、添加)。

3. 教师功能模块:该模块可以管理员教师的登录、管理教师信息(包括修改、删除、添加)、设置课程的管理(包括修改、删除、添加)、资源的管理(包括修改、删除、添加)、在线讨论的管理(包括修改、删除、添加)、学习心得的管理(包括修改、删除、添加)。

4.班级功能模块:该模块可以管理班级的信息(包括修改、删除、添加)、设置课程的管理(包括修改、删除、添加)。

5.该系统由统一的界面登录,在登录时判断角色的权限,如果角色是学生,则进入学生界面,进入学习;如果是管理员登录,则进入管理员界面,进行管理;如果是教师登录,则进入教师界面,对课程进行管理、班级管理;分别从角色中进行比对,并核对登录密码,进入不同的界面。

使网络课程学习得到了实现,并且高校使用网络统计学生课程信息能充分发挥信息技术在教学中的优势,更能与学生互动、准确及时的统计课程信息,让学生和老师能更快捷的管理课程信息,使信息技术和学校教育很好地结合起来,让学校的课程管理工作更高效、更准确、更省力的运行起来,提高管理和决策水平。

使用网络课程管理系统可以不受时间和空间的限制,可以存在着不同的形式,并且操作起来更灵活,更方便,新的现代教育方法逐步实施和发展,成为了当前的教学活动有力补充。并且给作为专业教学信息化建设学院提出了研究方向,逐步改进现代教育系统。
结束语

经过四个多月的紧张工作,“网络课程管理系统”基本开发完成。由于毕业设计时间较短,该系统还存在很多不足之处,例如说明文档不够详尽,用户界面不够美观等,这些都有待于进一步的改进。通过本次毕业设计,我收获了很多。不仅提高了自己的系统开发能力,最重要的是自己拥有了对一个信息系统建设全过程的参与经历。这四个多月里,我不断地学习和改进系统设计,了解各模块的业务流程,明确各功能的需求,与老师一起讨论系统方案,编写、测试代码,安装维护系统……,生活紧张而又充实。

经过对整个系统的开发和设计,我受益匪浅。了解了现代软件系统开发的工作流程,了解了开发一个系统主要技术要求,实现系统各功能需要注意哪些业务流程,设计好一个个好的系统要不断的完善系统功能,要紧密的联系客户,结合实际,并设计一个系统还能兼容性好,以后用户提出新的问题,能够继续扩展,易于维护,方便以后的功能扩展与开发。此系统不仅提高了我对软件工程的了解,也提高了自我的专业知识水平,让我在以后的工作中能够解决现实的问题,建立一个设计系统流程的思想模式,是我把学习的东西应用到现实的生活中去,以后我还会继续努力,不断提升自己的业务能力,使自己更能完成自己的工作。 参考文献

[1] 国务院《关于大力推进职业教育改革与发展的决定》国发(2002)16号.

[2] 教育部《关于全面提高高等职业教育教学质量的若干意见》教高(2006)16号.

[3] 肖伸平.创建高职现代教育教学平台的实践与体会.中国职业技术教育.2004.6.

[4] 王珠珠.我国普通高校网上教学平台及网站建设的现状分析.中国远程教育.2006年3月.

[5] 王芳.多层架构在远程教育平台开发中的应用.

[6] 章立民研究室著.AsP.NET Ajax经典范例168:vC#版.北京:机械工业出版社,2007.

[7] 王沛,冯曼菲编著.征服Ajax Web2.0开发技术详解.北京:人民邮电出版社,2006.

[8] 陈冠军编著.征服ASP.NET 2.0 Ajax开发技术详解.北京:人民邮电出版社,2007.

[9] 胡百敬,姚巧玫著SQL Server 2005数据库开发详解.北京:电子工业出版社,2006.

[10] 郑耀东.ASP.NET网络数据库开发实例精解.北京:清华大学出版社,2006.

[11] 周长发编著.C#面向对象编程.北京:电子工业出版社,2007.

[12] 张跃廷,许文武,王小科编著.C#数据库系统开发完全手册.北京:人民邮电出版社,2006.

[13] 白滨.解读21世纪以来美国网络高等教育[J].中国远程教育,2008(6).

[14] 郝连科,王以宁,王永峰.中国高等网络教育质量问题:英国的启示.现代教育技术,2007(11).

[15] 黄玲.开展基于网络的研究性学习[J].中国远程教育,2004(3).

[16] 徐卫英.基于B/S模式的网络教学平台的设计与实现[J].电脑知识与技术,2008(33)

[17] 竹花.基于Web服务的网络教学平台的研究与设计.福建电脑,2006(01).

[18] 启平,袁志刚,马军.网络教学平台中教学课件个性化的实现.广西医科大学学报,2006.

[19] 刘淳,章强,武齐阳,丁志祥.交互式网络教学平台的研究与实现.南京学学报(自然科学版),2006.

[20] 萨师煊,王珊. 数据库系统概论(第三版)[M]. 北京: 高等教育教育出版社, 2000.

[21] 张海藩. 软件工程导论[M]. 北京: 清华大学出版社, 2003.

[22] 郑阿奇. Java EE使用教程[M]. 北京: 电子工业出版社, 2009.

[23] 吴映波 等. Java EE 5开发基础与实践[M]. 北京: 清华大学出版社, 2008.

[24] 赵彦著JavaEE构架技术进阶式教程[M]清华大学出版社,2011.

[25] 郭克华著JavaEE程序设计与应用开发[M]清华大学出版社,2011.

[26] 李刚著 轻量级JavaEE企业应用实战(第3版):Struts2+Spring3+Hibernate整合开发[M]电子工业出版社,2010.

[27] HYPERLINK "http://www.ilucking.com/Brand-press/BK-writes.asp?BK_id=C009284" \o "(美)布赫(Booch,G.);等" \t "_blank" (美)Booch,G等. HYPERLINK "http://www.ilucking.com/Brand-press/Brand-books.asp?BK_id=C009284" \o "UML用户指南(英文版 第二版)" UML用户指南(英文版 第二版)[M]. 北京: HYPERLINK "http://www.ilucking.com/Brand-press/Brand-Corporation.asp?BC_id=26" \o "机械工业出版社" \t "_blank" 机械工业出版社, 2007.

[28](美)Jeffrey D.Ullman Jennifer Widom著 岳丽华 等译 A First Course in Database Systems[M]. 北京:机械工业出版社,2009.

致 谢

本文从选择主题和系统构建都是在****的指导下完成的,导师王教授从论文的选择、技术的实现、结构的论证到详细的设计和调试,每一个阶段都凝聚着王老师的心血和汗水,在导师的悉心指导,我终于完成了该系统整体设计和系统的实现,并且在这两年的研究生学习和生活中,我也得到王老师很多帮助和无私的关怀。在次深深的感谢王树良老师,并表达我崇高的敬意。

在漫长的研究生学习过程中和本系统的设计过程中,每一位武汉大学任课老师对我们的严格要求和无私的帮助,使能够顺利的完成论文的设计,这些都要归功于各位教师的辛苦的劳作,在这两年的研究生学习中,使我掌握更多的专业知识,并在论文设计中得到了实践。正是有了他们的悉心帮助和支持,才使我的毕业论文工作顺利完成,在此向武汉大学国际软件学院的全体老师表示由衷的谢意。感谢他们两年来的辛勤栽培。PAGE PAGE I
PAGE IIIPAGE 43

JDBC数据库
Servlet容器
应用程序服务器
http服务器
客户机

浏览器DataBaseModel(JavaBeans)
View

(JSP)
Controller (Servlet)
jspservlet

免费下载 ×

下载APP,支持永久资源免费下载

下载APP 免费下载
温馨提示
请用电脑打开本网页,即可以免费获取你想要的了。
扫描加我微信 ×

演示

×
登录 ×


下载 ×
论文助手网
论文助手,最开放的学术期刊平台
				暂无来源信息			 
回复
来来来,吐槽点啥吧

作者联系方式

×

向作者索要->