基于JAVA的网络教学系统论文

上传人:沈*** 文档编号:42747524 上传时间:2021-11-27 格式:DOC 页数:48 大小:2.58MB
收藏 版权申诉 举报 下载
基于JAVA的网络教学系统论文_第1页
第1页 / 共48页
基于JAVA的网络教学系统论文_第2页
第2页 / 共48页
基于JAVA的网络教学系统论文_第3页
第3页 / 共48页
资源描述:

《基于JAVA的网络教学系统论文》由会员分享,可在线阅读,更多相关《基于JAVA的网络教学系统论文(48页珍藏版)》请在装配图网上搜索。

1、重庆邮电大学本科毕业设计(论文) 编 号: 审定成绩: 重庆邮电大学毕业设计(论文)设计(论文)题目:基于JAVA的网络教学系统学 院 名 称 :学 生 姓 名 :专 业 :班 级 :学 号 :指 导 教 师 :答辩组 负责人 :填表时间: 年 月重庆邮电大学教务处制摘 要论文对项目的开发背景、开发环境、目的意义进行阐述,然后针对课堂教学模式重点对各个功能模块的实现方法作了详细论述,在此基础上提出了网络教学系统的构建设想,并对网络教学系统的教学应用研究作深入的分析研究,包括系统的理论支撑和系统的实施应用方案,结合当前计算机网络、数据库技术和网络教学的评价特点。然后对开发环境以及系统模块分别做出

2、详细介绍,系统采用SSH技术和MySQL数据库技术结合MVC设计模式对系统进行开发。论文主要从论坛答疑,自主选课,文件共享,教师审核等模块介绍网络教学系统系统。先对学生成长档案袋管理系统的构建作了详细的分析和设计,最终实现选课、审核、记录、存储、师生答疑等再现学生学习过程,实现学生、教师、共同参与学生学习过程的评价与监督,使之成为优化教学课堂的好帮手。网络教学的研究与实现,把各种多媒体信息(如声音,文字,图像,动画等)融为一体,向学生提供一个既丰富多彩、生动活泼,又方便快捷的人机交互界面,使学生在学习过程中各个感官都能接受到教学的信息,对改善教学环境,提高教学质量,改变传统的教学模式都会起到积

3、极创新的作用。论文在介绍系统的同时对各项开发技术均有较为详细的介绍(JSP、AJAX、Struts2、Spring),能让刚接触java的读者更快理解网络教学系统的实现过程。关键词 网络教学 教学研究 SSH Mysql数据库 1AbstractThe article first to project the development background, the development situation of both at home and abroad, expounds the significance and analysis, this paper puts forward th

4、e construction of network teaching system ideas, and network teaching system of the teaching application research for the analysis of the research, including the system theory support and the implementation of the system solutions, and combining the current computer networks, database technology and

5、 network teaching evaluation of characteristics,then make a detailed introduction to the development environment and the system module respectively. the system adopts the SSH technology and MySQL database technology in combination with MVC design pattern on the system of development, first to the st

6、udents' growth management system of the construction of the increasingly has made the detailed analysis and design, and then to "qualitative evaluation, independent study, bilateral reflection, teaching evaluation" adaptation of the classroom teaching mode key to each function module a

7、nd the realization method of makes detailed discussion, and finally achieve record, storage, reproduce students learning process, students, teachers, and realize the participation of the students' learning process evaluation and supervision, make it become the good assistant of the classroom tea

8、ching. Research and implementation of network teaching, all kinds of multimedia information (such as voice, text, images, animation and so on) com., to provide students with a rich and colorful, be lively and vivid, and convenient and swift human-computer interaction interface, make student all sens

9、es receive instruction information in the learning process, to improve the teaching environment, to improve the quality of teaching, change the traditional teaching mode can play positive role of innovation Based on the introduction of system and the development technology are introduced in detail (

10、JSP, AJAX, Struts2, Spring), can let just contact the Java reader to understand the realization process of the network teaching system Keywords Network teaching Teaching and research SSH Mysql 2目 录摘 要IAbstractII目 录1前 言3 项目背景3 项目意义4第一章 网络教学系统应用研究5 第一节 网络教学的相关概要5 一、网络教学系统在教学中的作用5 二、实施网络教学的准备工作5 第二节 本章

11、小节6第二章 网络教学系统的开发技术研究7 第一节 JSP简述7 第二节 AJAX原理8 第三节Tomcat的概述8 第四节 MYSQL的概述9 第五节 Struts2工作原理10 第六节Eclipse简介10 第七节 本章小节11第三章 网络教学系统的分析与设计12 第一节 网络教学系统的需求分析12 第二节 网络教学系统可行性分析12 一、经济可行性分析12 二、技术可行性分析12 第三节 网络教学系统的设计13 一、网络教学系统框架的设计13 二、各模块的功能设计14 第四节 本章小节19第四章 网络教学系统的实现20 第一节 主要功能模块的实现20 一、首页20 二、用户注册/登录20

12、 三、个人中心21 四、论坛答疑23 第二节 主要功能程序的实现24 一、程序设计思想24 二、数据库连接的建立25 三、注册用户27 四、申请(审核)课程29 五、发帖(回帖)31 六、文件上传32 第三节 本章小结34第五章 系统测试35 第一节 系统测试的目的跟原则35 第二节 子系统测试36 第三节 本章小节36第六章 总结与展望37 第一节 总结37 第二节 展望37致 谢38参考文献39附 录40 附录 外文参考文献(原文)40 附录 外文参考文献(译文)42前 言项目背景在线学习系统是一个正在兴起的应用领域,主要利用网页制作、数据库等技术实现网上教学的实时性、交互性、动态性。目前

13、对于网上学习的模式以及其所涉及的技术仍有许多问题需要探讨和解决。World Wide Web已成为Internet上最流行和最具潜力的信息查询,被广泛地用于资源共享和技术共享,而且这些技术在教育方面的潜力越来越明显,尤其在开放的和远程的教学方面。网络教学是利用多媒体技术、计算机网络技术等现代信息技术开展起来的一种新型教学形式。它使得广大受教育者实现优秀教育资源和教育方法不受时间和空间等约束的共享。网络教学可以实现优秀教育资源和教育方法不受时间和空间等约束的共享,受教育者根据自己的水平和时间情况安排自己的学习计划和学习进度,实现传统教育无法做到的“个性化教育”。 作为传统教学的延伸,网络信息化教

14、学的作用正逐步被人们所重视,随着网络技术和多媒体技术的进步,网络信息化教学系统还会有更多的发展空间。本系统突破一般多媒体辅助教学工具的思想,目的是尽可能将现实的活生生的学习环境和方法应用于网络教学中,提高学生网上学习的兴趣,从而真正提高网上学习质量;同时本系统的总体框架是为建立多学科的通用的模块化的网上学习平台,为今后开展广泛的网上教育提供技术基础服务。第二节 国内外发展现状 目前,它的研究和应用主要有两种形式:一种是基于Web的软件实现方式,在这种方式下,学生或教师只要有一台连网的计算机,就可以通过软件进行远距离教学,不需要特殊的硬件,在这样的系统中学生可以进行学习、讨论、等,学生和教师之间

15、可以传输文字、图形、声音、图像等各种信息;第二种形式是基于视频会议系统的实现方式,它除了需要第一种方式中的各种软件支持以外,还需要特殊的硬件,使学生和教师可以相互实时看到和听到对方,同时也可以充分利用视频会议系统所提供的特殊功能。远程教学从研究以个别化学习为主的自主学习和适应性学习,到以小组为主的协作学习与合作学习,以及今天人们更为关注的多元智能理论和混合型学习,其中任何一种学习方式的引用均对教育和远程教育的发展起着不同的推动作用。目前远程教学具体内容可以归结为以下几个层面: 关注合作学习 基于数据仓库支持合作学习的智能教学专家系统。 评价测试通过分析学科材料和测检结果提供学习意见的概念图模型

16、项目意义本课题研究的目的在于在传统的课堂式教学下学习存在着很多的缺点:如:享受到最优秀老师服务的只能是少数人;不能随时随地、灵活有效的、个人掌握学习主动权。随着科学技术的不断提高,计算机科学与技术日渐成熟,计算机应用的普及,计算机已进入人类社会生活的各个领域,并发挥着越来越重要的作用,越来越多的学员选择网上在线学习。在线学习提供最优秀的教育资源传统授课方式中,真正能享受到最优秀老师服务的只能是少数人,而通过在线学习提供的视频学习,任何人都可以轻松享受到优秀老师提供的教学服务,在线学习系统整合各领域最优秀的教学视频,可以让你接受的第一流的教育。在线教学不受时间的限制,并且可以随时随地在可以上网的

17、地方参与学习。网络教学系统可以实现对学生过程性学习情况的详细记录,而且这些记录内容没有特定的标准要求,只要是学生喜欢的作品都可以上传到系统中进行保存,通过本项目可以有效的提高学生的学习兴趣,促进学生自主学习,成为优化教学模式、提高教学质量的一个好帮手。第一章 网络教学系统应用研究第一节 网络教学的相关概要在多媒体辅助课堂教学环境下, 以注重“质性评价、自主学习、双边反思、网络教学的教学模式来辅助教学,以主张“让学生主动学习,学会学习”的主体教育理论和质性课程评价理论、现代教学论等教育理论为依据,另外反思性学习理论认为:教和学是一个需要不断重复检查、反省和调整的持续过程。因此笔者认为运用网络教学

18、实际教学中可以描述学生的学习过程, 记录学生的学业成长, 有助于客观、正确的引导学生的学习。这种评价融入课程教学之中, 其一体化可以促使学生主动学习、小组合作学习, 完成任务。在实际教学中, 创造性地实施成长档案袋评价具有简、便、廉、验的特点, 能够达到多、快、好、省的效果3。这种评价不仅具有传统意义上的区分和评判功能, 更有助于及时调整和改进教学, 促使学生学业进步, 完成特定学习任务。一、网络教学系统在教学中的作用 网络教学系统是一整套提供远程教学服务的系统软件,合理有效地利用学科教学资源,为实施全方位的现代远程教学提供服务,它将网络课件与学校的远程教学服务进行了有机的集成。网络教学系统不

19、仅是先进计算机科学和技术水平的体现,更重要的是要符合现代化教育的一般规律,能够为远程教育提供一个真正高效的现代化教育手段。网上教学不仅仅是将教学材料在网上发布,而更多的是学生与教师之间、学生与学生之间的充分沟通与交流,由于远程教学教师与学生之间在空间上的分离,这种沟通与交流就显得尤为重要,另外,传统教学过程中一些保证教学质量的关键环节,如作业、考试、图书馆、笔记记录等,都需要一些专用的工具来支持,而现有Internet技术并没有提供这些工具,因此需要进行工具开发。此外网上交互式的程序设计,是一般非计算机专业教师所难以做到的,因此迫切需要一套网上的教学支持平台,为教师在网上实施教学提供全面的工具

20、支持,屏蔽程序设计的复杂性,使得教师能够集中精力于教学,也使得网上教学从简单的教学信息发布变成一个充满交互与交流的虚拟学习社区。二、实施网络教学的准备工作 1、确保教学目标和学习目标相一致。 2、向学生介绍网络教学的理念。必须向学生讲清楚网络教学的概念,也可向学生展示系统使用。在这个阶段指引学生将注意力转向网络教学的主要方面,即作为一个学习工具使用。 3、关注其他感兴趣的团体。确保学校负责人关注你的这种新的教学方式。教师和管理者需要向学生讲明网络教学是怎样工作的,以及它相比传统教学的优越性。第二节 本章小节本章为论文正文第一章,主要介绍了网络教育系统的主要作用,以及开发该系统所需要的前期准备工

21、作,强调本系统以“简、便、廉、验”为思想以“多、快、好、省”的效果为最终目标进行系统开发。为后续真正代码实现做好基础。第二章 网络教学系统的开发技术研究综合各方面的考虑,系统选择采用Java、JSP、struts2、JDBC、spring、javascript等技术来开发本网络教学系统。该系统为三层B/S结构模式,采用MySQL5. 0作为后台数据库,充分利用Java技术的优势,使得系统稳定高效。并在局部地区采用AJAX实现实时更新。下面将对系统所用到的相关技术的概况和优势作简单的叙述,以增加读者对系统开发环境的了解。 第一节 JSP简述JavaServer PagesTM (JSP)技术为创

22、建显示动态生成内容的Web页面提供了一个简捷而快速的方法。JSP技术的设计目的是使得构造基于Web的应用程序更加容易和快捷,而这些应用程序能够与各种Web服务器,应用服务器,浏览器和开发工具共同工作。5 在万维网短暂的历史中,它已经从一个大部分显示静态信息的网络演化到对股票进行交易和进行购书操作的一个基础设施。在各种各样的应用程序中,对于可能使用的基于Web的客户端,看上去没有任何限制。6基于浏览器客户端的应用程序比传统的基于客户机/服务器的应用程序有几个好处。这些好处包括几乎没有限制的客户端访问和极其简化的应用程序部署和管理(要更新一个应用程序,管理人员只需要更改一个基于服务器的程序,而不是

23、成千上万的安装在客户端的应用程序)。7这样,软件工业正迅速地向建造基于浏览器客户端的多层次应用程序迈进。  很显然,目前所需要的是一个业界范围内的创建动态内容页面的解决方案。这个方案将解决当前方案所受到的限制,即:能够在任何Web或应用程序服务器上运行;将应用程序逻辑和页面显示分离;能够快速地开发和测试;简化开发基于Web的交互式应用程序的程。  在JavaServer Pages (JSP)技术就是被设计用来满足这样的要求的。JSP规范是Web服务器、应用服务器、交易系统、以及开发工具供应商间广泛合作的结果。太阳微系统公司(Sun Microsyste

24、ms Inc.)开发出这个规范来整合和平衡已经存在的对Java编程环境(例如,Java Servlet和JavaBeansTM)进行支持的技术和工具。其结果是产生了一种新的、开发基于Web应用程序的方法,给予使用基于组件应用逻辑的页面设计者以强大的功能。8JSP技术在多个方面加速了动态Web页面的开发,使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使用JSP标识或者小脚本来生成页面上的动态内容(内容是根据请求来变化的)。生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。如果核心逻辑被封装在标识和Bean

25、s中,那么其他人,如Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的生成。JSP技术很容易整合到多种应用体系结构中,以利用现存的工具和技巧,并且扩展到能够支持企业级的分布式应用。10第二节 AJAX原理Ajax这个概念的最早提出者Jesse James Garrett认为:Ajax是Asynchronous JavaScript and XML的缩写。Ajax并不是一门新的语言或技术,它实际上是几项技术按一定的方式组合在一在同共的协作中发挥各自的作用,它包括: 使用XHTML和CSS标准化呈现; 使用DOM实现动态显示和交互; 使用XML和XSLT进行数据交换与处理; 使用

26、XMLHttpRequest进行异步数据读取; 最后用JavaScript绑定和处理所有数据。Ajax的工作原理相当于在用户和服务器之间加了个中间层,使用户操作与服务器响应异步化。并不是所有的用户请求都提交给服务器,像些数据验证和数据处理等都交给Ajax引擎自己来做,只有确定需要从服务器读取新数据时再由Ajax引擎代为向服务器提交请求。在旧的交互方式中,由用户触发一个HTTP请求到服务器,服务器对其进行处理后再返回一个新的HTHL页到客户端,每当服务器处理客户端提交的请求时,客户都只能空闲等待,并且哪怕只是一次很小的交互、只需从服务器端得到很简单的一个数据,都要返回一个完整的HTML页,而用户

27、每次都要浪费时间和带宽去重新读取整个页面。Ajax的一个最大的特点是无需刷新页面便可向服务器传输或读写数据(又称无刷新更新页面),这一特点主要得益于XMLHTTP组件XMLHTTPRequest对象。这样就可以向再发桌面应用程序只同服务器进行数据层面的交换,而不用每次都刷新界面也不用每次将数据处理的工作提交给服务器来做,这样即减轻了服务器的负担又加快了响应速度、缩短了用户等候时间。Ajax的原理简单来说通过XmlHttpRequest对象来向服务器发异步请求,从服务器获得数据,然后用javascript来操作DOM而更新页面。这其中最关键的一步就是从服务器获得请求数据。要清楚这个过程和原理,我

28、们必须对 XMLHttpRequest有所了解。XMLHttpRequest是ajax的核心机制,它是在IE5中首先引入的,是一种支持异步请求的技术。简单的说,也就是javascript可以及时向服务器提出请求和处理响应,而不阻塞用户。达到无刷新的效果。第三节Tomcat的概述自从JSP发布之后,推出了各式各样的JSP引擎。Apache Group在完成GNUJSP1.0的开发以后,开始考虑在SUN的JSWDK基础上开发一个可以直接提供Web服务的JSP服务器,当然同时也支持Servlet, 这样Tomcat就诞生了。Tomcat是jakarta项目中的一个重要的子项目,其被JavaWorld

29、杂志的编辑选为2001年度最具创新的java产品,同时它又是sun公司官方推荐的servlet和jsp容器,因此其越来越多的受到软件公司和开发人员的喜爱。servlet和jsp的最新规范都可以在tomcat的新版本中得到实现。其次,Tomcat是完全免费的软件,任何人都可以从互联网上自由地下载。Tomcat与Apache的组合相当完美。Tomcat6.0最新支持Servlet2.4和JSP2.0,因为Tomcat技术先进、性能稳定、Tomcat服务器是由一系列可配置的组件构成,其核心组件是Catalina Servlet容器,它是所有其他Tomcat组件的顶层容器。Tomcat的组件可以ATA

30、LINA_HOME>/conf/server.xml文件中进行配置,每个Tomcat的组件在server.xml文件中对应一种配置元素。以下代码以XML的形式展示了各种Tomcat组件之间的关系:<Server> <Service> <Connector/> <Engine> <Host> <Context> </Context> </Host> </Engine> </Service></Server>Tomcat的目录为:tomcat|-bin Tomc

31、at:存放启动和关闭tomcat脚本;|-conf Tomcat:存放不同的配置文件(server.xml和web.xml);|-doc:存放Tomcat文档;|-lib/japser/common:存放Tomcat运行需要的库文件(JARS);|-logs:存放Tomcat执行时的LOG文件;|-src:存放Tomcat的源代码;|-webapps:Tomcat的主要Web发布目录(包括应用程序示例);|-work:存放jsp编译后产生的class文件;第四节 MYSQL的概述MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),MySQL数据库系统使用最常用的数据库管理语言-结构

32、化查询语言(SQL)进行数据库管理。由于MySQL是开放源代码的,因此任何人都可以在General Public License的许可下下载并根据个性化的需要对其进行修改。MySQL因为其速度、可靠性和适应性而备受关注,大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。它使用系统核心提供的多线程机制提供完全的多线程运行模式,提供了面向C、C+、Eiffel、Java、Perl、PHP、Python以及Tcl等编程语言的编程接口(APIs),支持多种字段类型并且提供了完整的操作符支持查询中的SELECT和WHERE操作。 时至今日,很多大型的网站也用到MySQL数据库,它

33、的发展前景是非常光明的,它由MySQL AB开发、发布和支持。MySQL AB是一家基于MySQL开发人员的商业公司,是一家使用了一种成功的商业模式来结合开源价值和方法论的第二代开源公司。MySQL是MySQL AB的注册商标,MySQL是一个快速的、多线程、多用户和健壮的SQL数据库服务器。MySQL服务器支持关键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置的软件中去。MySQL是一个数据库管理系统,一个结构化的数据集合。它可以是从一个简单的销售表到一个美术馆、或者一个社团网络的庞大的信息集合。如果要添加、访问和处理存储在一个计算机数据库中的数据,你就需要一个像MySQL这样的数据

34、库管理系统。第五节 Struts2工作原理struts2是struts1和Webwork结合的产物。一个请求在Struts2框架中的处理分为以下几个步骤: 客户端发出一个指向servlet容器的请求(tomcat); 这个请求会经过图中的几个过滤器,最后会到达FilterDispatcher过滤器。 过滤器FilterDispatcher是struts2框架的心脏。在web容器启动时,struts2框架会自动加载配置文件里相关参数,并转换成相应的类。 如果找到需要调用的Action,过滤器会把请求的处理交给ActionProxy。 ActionProxy创建一个ActionInvocation

35、的实例。ActionInvocation实例使用命名模式来调用,ActionInvocation初始化时,根据配置,加载Action相关的所有Interceptor。通过ActionInvocation.invoke方法调用Action实现时,执行Interceptor。 一旦Action执行完毕,ActionInvocation负责根据struts.xml中的配置找到对应的返回结果第六节Eclipse简介Eclipse是一种可扩展的开放源代码IDE。2001年11月,IBM公司捐出价值4,000万美元的源代码组建了Eclipse联盟,并由该联盟负责这种工具的后续开发。集成开发环境(IDE)经

36、常将其应用范围限定在“开发、构建和调试”的周期之中。为了帮助集成开发环境(IDE)克服目前的局限性,业界厂商合作创建了Eclipse平台。Eclipse允许在同一IDE中集成来自不同供应商的工具,并实现了工具之间的互操作性,从而显著改变了项目工作流程,使开发者可以专注在实际的嵌入式目标上。16Eclipse的最大特点是它能接受由Java开发者自己编写的开放源代码插件,这类似于微软公司的Visual Studio和Sun 微系统公司的NetBeans平台。Eclipse为工具开发商提供了更好的灵活性,使他们能更好地控制自己的软件技术。Eclipse 联盟已经宣布将在2004年中期发布其3.0版软

37、件。这是一款非常受欢迎的java开发工具,这国内的用户越来越多,实际上实用它java开发人员是最多的。第七节 本章小节本章根据第一章为基础,确定实际系统开发中需要使用的相关技术和开发环境。由于本系统为B/S模式,对于几项主要技术进行了较为通俗的解释。主要涉及到JSP、AJAX、TOMACT、MYSQL、Struts2等web技术。同时介绍了开发环境与开发工具Eclipse。第三章 网络教学系统的分析与设计第一节 网络教学系统的需求分析基于传统教学方式的种种问题和我国新课程改革的需要和注重过程性评价的提倡,网络教学成了重点推荐的可广泛推行的评价方式之一。 为了更确切大家对网络教学的需求态度,我对

38、教师、学生和家长对于学校实施成长档案袋的态度进行了抽样调查,结果如表4.1所示。从调查情况看,教师、学生和家长的积极态度表明网络教学这一新生事物得到了普遍的认可。 表3.1教师、学生、家长对成长档案袋评价的态度调查表调查对象及人数态度所占比例教师(10人)没有必要12%有必要56%很有必要32%学生(30人)不喜欢6%比较喜欢14%一直都很喜欢80%家长(10人)反对无无所谓8%第二节 网络教学系统可行性分析可行性分析主要是需要关注经济效益和技术可行性可行性,下面就经济和技术这两方面进行简单的分析:一、经济可行性分析对于经济主要包括设备费用、维护费用、人员费用等,在设备方面,目前大多数中小学都

39、建立了校园网,拥有网络实验室基地,因此设备问题已经不是问题,维护费主要是提供系统更新费用,更新工作可由在本校的信息技术教师或学校专职网络技术人员进行,这样可以减少开支。总体来说,建立学生成长档案袋管理系统的经济费用不会过于昂贵,一般的学校都能承担,而且可以减少纸质档案袋存在的种种问题,提高经济效益。二、技术可行性分析只要时间和资源不加限制,所有项目在理论上都是可行的。但项目开发总是始终受制于资源和开发时间。为确保本系统的开发能够顺利进行。应该在正式开展前对系统开发的可行性进行仔细而谨慎的评估。就运行环境而言,我的个人电脑提供了足够的硬件资源和软件资源来支持系统的运行。就开发所需的工具软件及技术

40、而言,目前用于软件开发的工具有很多,功能强大且齐全。而相关资料从我校的图书馆和互联网上很容易得到且内容丰富。开发时间,大约三个月的时间,虽然对于JSP开发,我还缺乏经验,但只要通过努力,在规定时间内完成开发任务是可以做到的。目前,本人开发环境是:AMD2600+CPU,320G硬盘空间,2G内存,Windows 7操作系统,TOMCAT7.0,这样的计算机系统对于应用软件的开发来说是可行的。从上述分析可以清晰的看出开发学生成长档案袋管理系统的各种技术已经相当成熟,所以技术不是问题。第三节 网络教学系统的设计一、网络教学系统框架的设计 网络教学的最大优势是向教师和学生展示出一个真实、丰富的学习过

41、程,与传统的教学模式相比更能说明学生知道什么和能够做什么。网络教学系统比传统的教学凡是更灵活,因为多媒体为呈现作品提供了可修改的架构,表现了专业的活力。如果设计合理,它可以展示学生思考能力和解决问题的能力、所使用的策略和过程性技能及知识的建构。除此之外,它还可以表明学生的持续力、努力以及意愿的改变情况。其中对各个模块的简要功能描述如下: 学生模块:主要是学生个人空间,功能包括学习日志、申请课程、发出提问、共享作品、公告栏等,学生通过账号登陆后可以提出问题、查看成绩、上传作品、修改个人信息、评论、浏览信息等,本模块主要是为学生个人提供一个畅所欲言的平台。 教师模块:主要是教师对所在班级学生的管理

42、,功能包括个人信息、学生管理、管理学生档案、公告管理、审核申请、回答学生疑问等,其中各个功能模块下又包括相应的子功能,总的来说本模块是提供给教师录入/查看/管理学生的相关信息。 管理员模块:管理员是整个系统的核心管理人物,他可以控制整个系统,主要功能包括个人信息、教师管理、管理员设置、信息查询、其他设置、系统信息,其中各个功能模块又有其相应的子功能,本模块主要是系统管理员对系统相关信息。对系统整体结构的设计是数据库管理系统开发的起点,这也是整个系统开发过程中非常关键的一步,它是决定着开发的成败。在设计时,应进行充分的分析,决定整个系统应具备的功能,并创建系统功能模块结构。二、各模块的功能设计

43、1、用户模块用户包括未注册的路人、注册的学生、老师、管理员的权限功能的实现和划分的用户模块。未注册的用户登陆本系统只能浏览本系统的新闻资讯,或者是浏览论坛中的帖子。注册成功的学生、老师用户登陆成功之后除了享有路人所有的权限之外还可以下载视频、课件。进入论坛之后还可以发帖,提出自己的问题,也可以针对某个问题回复别人提出来的问题,和其他的人一起沟通。管理员是权限最大的用户,可以对本系统中所有的资源进行管理,包括用户的管理,管理员有权注销不合法的用户;主页面的新闻,管理员可以发布新闻、撤消新闻;论坛中帖子的管理,管理员有权对含有不健康或者是不合法的内容的帖子进行撤消。 2、文件上传模块本系统涉及的文

44、件主要包括课件资源:在后台管理界面中设置“资料管理”按钮,点击 “上传文件”可以在自己的主机或网络上选择要上传的文件资料,这里一次可以上传一个或多首文件,同时记录文件路径保存在数据库中方便进行查询。 3、答疑模块 (1)提出问题登陆的学生用户可以向老师提问,当学生遇到方向性的问题,可以向有关的老师提问。每个老师都有教授的课程以及介绍,学生可以通过了解老师所擅长的科目来向他提问。当老师解决了学生提出的问题后,学生登陆时将列出所有解决的问题。 (2)解决问题登陆的老师用户登陆可以浏览之前学生所提出的所有问题和解决的问题,老师可以解决未处理的问题。 4、公告模块在首页的公告区域显示管理员发布的公告信

45、息,公告信息实时更新主要显示的是数据库中的公告表中的数据资源。 5、BBS论坛模块用户登陆首先进入论坛的首页,在首页是显示的所有用户发表的主贴信息,该页面主要是分页显示数据库中的主帖信息了内容,包括发帖人头像、主题、发表时间、点击数等等,可以点击某个主贴的主题链接到该贴的所有跟帖信息,注册的用户还可以发表主题、回复主贴。达到与其他老师或者同学交流的功能。然后该页面也提供用户登陆和注册的功能,主要对于那些路人观看之后想发表自己的想法的人提供便利,在从帖的页面主要是分页显示某个主帖的从帖信息,同时也包括用户登陆和注册的功能。 6、后台管理模块后台管理是最重要的一块,后台的管理功能的实现,管理员登陆

46、之后,可以对数据库中的所有信息进行管理,本模块的功能模块由下图所示:后台管理用户管理公告管理资源管理论坛管理图3.1 后台管理功能模块图(1)用户的管理管理员有权对该系统的所有管理员、学生进行管理、这就包括对用户的添加、修改、删除。(2)公告管理管理员可以定期对主页上面的公告进行更新,通过该模块,管理员可以轻松、快速的对公告进行管理。 信息公告的录入主要功能是使管理员以简捷的方式对通知公告表进行操作,主要的功能有:增加、删除和修改。管理员在进行以上所有操作时首先要进入登录界面进行登录,登录用的用户名和密码是按管理员的不同权限事先分配好的,登录成功后可以操作公告信息。 浏览信息公告在首页的适当位

47、置设置公告栏,主要是最新信息。最新的而且较重要的可做成滚动条的形式,滚动显示通知的信息。当鼠标置于某个标题上时,滚动条停止滚动,点击标题浏览通知公告的正文。其他的可在主页面里的适当位置按时间的倒序将标题和发布日期显示出来,点击标题浏览公告信息的正文。(3)资源管理主要是对现有资源的管理和资料的上传和对现有资源的管理可对现有的视频和课件进行增加、删除、修改,可对那些上传资料不合法的视频资源可将其是否发布的属性该为否,这样将不会在页面上显示,也不能提供下载。还有一种就是将是否下载该为否,这样的话只有在页面显示,但是还是不能下载。对于课件资源只有是否下载的属性,不提供在线的打开,只提供下载。资料的上

48、传管理员可上传所需的资源供学生用户下载。(4)数据库的设计逻辑结构设计的原则如下: 尽可能的减少数据冗余和重复。 结构设计与操作设计相结合。 数据结构具有相对的稳定性。基于以上设计原则,本系统设计了如下数据库:系统ER图图3.2 系统数据库ER图表1 用户性息表dy_user(URole字段用于区分用户角色)图3.3 数据库user表表2 课程申请表dy_apply图3.4 数据库apply表表3 资源文件表dy_filesrc(存储上传文件所在路径)图3.5 数据库filesrc表表4 BBS论坛回信息表dy_revert图3.6 数据库revert表表5 BBS论坛发帖信息表dy_topi

49、c图3.7 数据库topic表表6 课程信息表dy_topic_group图3.8 数据库topic_group表表7 老师代课信息表dy_tu图3.9 数据库tu表第四节 本章小节本章对网络教学系统开发进行整体设计与分析,主要通过需求分析、可行性分析。且分模块介绍了本系统的主要功能(以用户模块、BBS论坛模块、文件上传模块为例),并对数据库设计与建表进行了较为详细的说明。第四章 网络教学系统的实现第1节 主要功能模块的实现 系统采用MVC模式,使用JSP+js+jquery+Struts2标签控制前台页面显示,Struts2中Action与后台交互。Spring框架主要用于依赖注入Actio

50、n及配置数据库文件。因系统功能复杂程度DAO数据库访问层并未使用Hibernate框架而使用原始JDBC操作数据库。一、首页首先进入的是网站的首页,首页主要采用的主要是div容器,使用div能快速、准确的对页面的元素的大小和位置进行定位,在div容器中进一步使用table,对页面的元素进行排版。网站所有的页面都采用统一的样式文件.css,页面所有的背景图片都放在image文件夹下11。在主页面显示同学最近所发表的提问贴列表,主要包括所属课程、课程编号、所属学院、发表人及发表时间等。页面右上方两个超链接(reg.nav、msg.dl)分别跳转到注册与登录页面。注册页用于游客注册账户,登录页面用于

51、已注册用户登录且系统会根据账户的URole值判断用户角色而赋予对应权限。图4.1 系统首页二、用户注册/登录通过首页的注册链接进入到注册页面,该页面主要是对用户的信息进行采集,主体是一个表单。通过“提交”按钮可以将用户的信息发送到服务器端,注册内容会在JSP页面通过js进行前台检查,在后台Struts2的Action中会进行后台检查确保信息合法性。注册页面:图4.2 系统注册页登录页面:图4.3 系统登录页三、个人中心当用户登陆成功以后,会在对应Action中判断该用户的角色从而赋予相应的权限。此时用户便拥有“个人中心”模块功能。在页面右上方会显示用户名并能显示该角色拥有的功能图4.4 个人中

52、心模块个人信息页显示用户各类信息并提供相应角色的所有功能图4.5 个人中心主页各功能都有自己独立的页面。以申请课程和上传文件为例图4.6 课程申请页文件上传功能方便老师和同学共享学习资料(最大同时支持3文件同时上传)图4.7 上传文件页四、论坛答疑本系统核心功能为论坛答疑模块,该模块学生可以发布自己学习过程中的疑问,而且可以指定希望询问的老师,系统会在对应的老师个人信息中提醒老师及时解答疑问。答疑页面分页显示所有回复。论坛显示页:图4.8 论坛展示页发表问题:图4.9 论坛发帖页查看自己发帖信息:图4.10 个人发帖信息查看自己所参讨论的贴子图4.11 个人参与讨论页第二节 主要功能程序的实现

53、一、程序设计思想常见的设计思想有两种:结构化和面向对象化,本系统采用的是面向对象的设计思想,下面简单介绍一下两者的不同以及面向对象程序设计的优点。传统的结构化开发过程包括软件目标的功能分解,以及使用正确的参数和返回值来创建函数。首先分析需求,确定功能,然后以函数的形式进行建模。在一个Web应用中很可能有上千个函数,这些函数能够不受限制的互相调用,因此在访问某个变量时,很难保证它不是正在被其他的函数访问或者修改。用JSP脚本来开发Web应用时就是上面所说的情况。只使用JSP而不使用任何Bean或自定义标记,在Web应用的规模比较小时还不会出现太多的问题,但是在Web应用的规模增大时就肯定会出现问

54、题。这些代码也许能够满足功能上的需要,却不能达到非功能性的要求。在结构化开发方法面临问题的时候,使用面向对象的方法进行分析、设计和开发就可以解决一部分问题。面向对象的分析和设计方法源于现实生活中的模块化的思想。对象是提供一组相关功能的实体,对象之间互相作用从而完成一定的任务。开发方法包括对目标的模块化,以及用类的形式对数据和函数进行封装。本系统采用主流的ssh(struts2,hibernate,spring)技术构架。相对于老系统优势: 典型的三层构架体现MVC(模型Model,视图View和控制)思想,可以让开发人员减轻重新建立解决复杂问题方案的负担和精力。便于敏捷开发出新的需求,降低开发

55、时间成本。 良好的可扩展性,ssh主流技术有强大的用户社区支持它,所以该框架扩展性非常强,针对特殊应用时具有良好的可插拔性,避免大部分因技术问题不能实现的功能。 良好的可维护性,业务系统经常会有新需求,三层构架因为逻辑层和展现层的合理分离,可使需求修改的风险降低到最低。随着新技术的流行或系统的老化,系统可能需要重构,ssh构架重构成功率要比其他构架高很多。 优秀的解耦性,ssh三层构架,控制层依赖于业务逻辑层,但绝不与任何具体的业务逻辑组件耦合,只与接口耦合;同样,业务逻辑层依赖于DAO层,也不会与任何具体的DAO组件耦合,而是面向接口编程。采用这种方式的软件实现,即使软件的部分发生改变,其他

56、部分也不会改变。二、数据库连接的建立本系统在数据库连接方面,由于使用了Spring框架,则能方便的控制系统数据库的配置和管理。在Spring的配置文件中application.xml配置用于数据库的连接的bean。Spring框架的JdbctTemplate类能自动实现数据库的连接操作: <!-通过JNDI获得数据源的引用-> <bean id="zxdyDataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name=&qu

57、ot;jndiName"> <value>java:comp/env/jdbc/zxdy</value> </property> </bean> <!- 配置JdbcTemplate的bean -> <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate"> <property name="dataSource"> <ref local=&

58、quot;zxdyDataSource"/> </property> </bean> <!- 配置DBUtil的bean 并注入资源-> <bean id="DBUtil" class="cn.xmz.dao.DBUtil"> <property name="jt"> <ref local="jdbcTemplate"/> </property> <property name="ds">

59、; <ref local="zxdyDataSource"/> </property> </bean>DBUtil类中封装了数据库操作的各种方法,直接使用DBUtil即可完成增删改查任务。DBUtil中部分代码如下:public List getGroupContent(String sql)/得到板块内容List al = new ArrayList();/创建返回List对象trysql = new String(sql.getBytes(),"iso8859-1");/对SQL进行转码rl = jt.queryF

60、orList(sql);/搜索得到结果if(rl.size()!=0)/结果不为空的情况for(int i=0;i<rl.size();i+)/遍历结果Map map=(Map)rl.get(i);/结果List中每一行为一个TopicItem ti = new TopicItem();/创建一个TopicItem对象ti.setTid(map.get("tid").toString();/设置TopicItem对象的帖子主键ti.setFtr(new String(map.get("ftr").toString();ti.setTitle(new

61、 String(map.get("title").toString();ti.setDjs(map.get("djs").toString();/设置TopicItem对象的点击数ti.setRevert(map.get("revert").toString();/设置TopicItem对象的回复数ti.setFtsj(map.get("ftsj").toString().substring(0,19);/设置发帖时间属性值ti.setHtr(new String(map.get("htr").toString();ti.setLastTime(map.get("htsj").toString().substring(0,19);ti.setGname(new String(map.get("gname").toString();al.add(ti);catch(Exception e)e.printStackTrace();/捕获异常并打印return al;/返回结果三、注册用户当用户打开注册页面将自己的

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!