基于javaweb计算机组成原理远程教育平台研究与开发

摘要:本论文针对南京信息工程大学专业课程计算机组成原理优课建设的需要,使用Java EE、LayUI框架、MySQL数据库管理系统等技术,开发了包含信息管理模块、在线学习模块和学习资源管理模块三大功能模块的计算机组成原理远程教育平台。本平台内容以计算机组成原理为基础,内容突出了计算机组成原理的课程特色,满足了线上线下混合教学的需要。
关键字:在线教育;Java;框架;计算机组成原理

Research and Development of Distance Education Platform of Computer Composition Principle

Chen Pengfei
School of Computer and Software, NUIST, Nanjing 210044, China

Abstract:To meet the needs of the excellence course construction of NUIST’s professional course which is called computer composition principle, this paper explores to develop the distance education platform of computer composition principle which includes three functional modules: information management module, online learning module and learning resource management module, by using the technologies of Java EE, LayUI framework and MySQL database management system. The content of this platform is based on the principle of computer composition, which highlights the course characteristics of the principle of computer composition and meets the needs of online and offline teaching.
Key words:Online Education; Java; Framework; Computer composition principle

一 绪论
本章主要介绍了本论文研究的目的、意义、当前研究的国内外发展现状和本论文的研究内容
1.1研究的目的和意义
在当前经济以及科技发展迅速的社会背景之下,网络已经逐渐普及到当下中国社会的各行各业。在教育领域,网络技术也得到了大规模的应用,在线教育平台如雨后春笋一般迅速出现。以目前在线教育中发展速度最快且极具代表性的MOOC为例,自从MOOC在2012年开始流行后,已经成为全世界最主要的在线学习形式之一。在高等教育领域播下了网络化的智慧火种,由此引发了一场对高等教育根本性改革的火种。[1]因此,将互联网与教育相结合,在高校教育领域研究和建设在线教育平台是十分有意义的。
当下,由新型冠状病毒引起的肺炎席卷全国,我国的各级教育因受疫情影响难以有效开展。为了响应教育部“停课不停教,不停学”的政策号召,在疫情期间也能给学生们提供稳定的教学,各级学校均采取使用在线教育平台授课的方式继续开展学习活动。在线教育的市场规模迅速扩大且因为在线教育平台能够满足各级学校的授课需求,在线教育这一概念的到了社会各界人士的认可[2]。在线教育平台的快速发展以及得到的大量肯定,证明了其在教育领域的可行性。然而,对于某些课程,例如计算机组成原理以及微机原理与接口技术这类强调实践与理论相结合的课程,仅采用MOOC资源替代模式下的课程学习无法实现良好的教学效果。[3]同时,我校正在进行计算机组成原理优课课程的建设。为了满足我校优课建设的需要并且满足课程的实践性需要,探索本校自建的远程教育平台的建设方法是十分必要的。
本论文中,远程教育平台的实现主要通过网络技术实现。本论文以南京信息工程大学计算机与软件学业开设的专业课计算机组成原理为蓝本,开展本校专用的在线教育平台的研究与设计,从而推广我校优质的教学资源,使得广大师生能够不受时空限制地开展教学活动,从而提高课程的学习效率。
1.2国内外研究现状
在线教育的通行概念约在十年前提出,美国是在线教育的发源地,上世纪90年代末,在线教育的概念开始由美国传播到世界各地,这一概念主键被全世界所知晓。至今,美国的高校在线教育体系建设经过数十年的发展,已经步入成熟阶段。2002年,美国麻省理工学院首次公布OWC在线教育资源,至2012年,Coursera,Udacity,edX这三个目前在世界上影响最大且用户人数遥遥领先于其他平台的MOOC平台建设完成且投入使用,MOOC逐渐成为社会获取在线教育资源的工具,为大众所接收。[4]据资料统计,截至2013年,美国超3000所公立以及私立大学已经正式的在线教育门户网站。[5]在线教育已经在欧美等发达国家成为获取教育资源的普遍手段。在美国,在线教育已经成为高校的宠儿,美国高等教育机构根据传统的课程模式实际在线课程,学生甚至已经可以通过完成在线课程获得相应的在线学位。[6]。从开发技术的角度出发,在线学习平台也在不断的发展。以Coursera平台为例,早期Coursera平台使用MySQL数据库,然而,随着用户数的不断增加,高并发量经常使得平台宕机,Coursera开发者也将数据库迁移至Cassandra,解决了这一问题。早期用户的是基于桌面端访问,所以Coursera平台使用Scala语言开发,底层框架全部部署于AWS。近年来,随着移动端的不断发展,开发团队也使用Swift开发了APP应用[7]。以edX平台为例,edX的开发者首先将其平台的源代码开源托管,全世界的开发者都能够在其开源的项目基础上搭建自己的在线教育平台。edX平台开发基于Python语言,少数代码使用Ruby语言,使用Python的web框架Django进行开发。浏览器端代码主要由JavaScript编写,少量代码使用CoffeeScript,设计模式采用MVC模式[8]。edX在开发过程中使用了大量的开源技术,如:MySQL,Nginx等,使得开发者可以迅速完成平台搭建,部署,开发在线教育平台。
相对于西方发达国家,我国对在线教育的建设开始时间较晚,但是热忱丝毫不逊于欧美地区。2010年,《国家中长期教育改革和发展规划纲要(2010—2020年)》就曾强调要“加快终端设施普及,推进数字化校园建设,实现多种方式接入互联网”。在2019年,由教育部等11个部门联合印发《关于促进在线教育健康发展的指导意见》,重申要促进在线教育健康发展出到2020年,强调利用已有的成熟技术手段推进在线教育的发展。[9]受到国外在线教育平台建设的激励,我国在线教育平台的建设迅速展开,并在数年的时间中取得了较快得发展,MOOC中文网,国家教育资源公共服务平台等平台相继建成。[10]得益于edX对平台源代码得公开,国内一些大学以OpenedX为基础,开发了自己的在线学习平台,清华大学在2013年在对edX平台源码研究分析的基础上开发了符合我国高等教育教学状况的MOOC平台—学堂在线。[11]在上文提及的OpenedX的基础上,清华大学对其进行了修改,加入了基于html5技术的视频播放器,对平台进行了语言本地化,添加了基于中文的全文搜索,使得平台更加适合国内用户使用。[12]
由阿里巴巴集团开发的钉钉在疫情期间成为了在线协同办公,在线教育的有效手段,为社会各界所接纳。从钉钉官网的开发者文档得知,钉钉开发基于Java语言,钉钉开放平台支持小程序和H5微应用两种开发模式,并且为开发者提供了SDK(Software Development Kit),钉钉使用了云存储,云技术,使得其在直播授课方面有着先天优势。[13]在线教育是钉钉的应用场景之一,得益于阿里巴巴集团在云技术方面的积累,钉钉的开放性以及其在各应用场景的广泛适应性,使得钉钉在市场迅速占据了一席之地,加之疫情的爆发,钉钉的技术优势使得它在在线教育方面大放异彩。随着移动平台的不断发展,响应式布局平台的开发也成为了热门,保证在线教育平台在不同的终端下具有良好的用户体验,是响应式布局的研究方向。根据主流设备的分辨率设置断点,在不同的设备中运行时会选择相应的布局以及样式结构,这样便能够使页面在不同终端下都能有良好的界面显示。[14]响应式平台布局的研究,使得在线教育平台能有更加广泛的适用性,是对于在线教育平台推广的一大推动。
在线教育平台的快速发展正在引领者一场教育变革[15],在这场变革中紧随时代潮流,开发与我校优课建设相关的在线教育平台,加入实践性的课程内容,融合在线教育平台现有的各种优点,并且使得在线教育平台能满足计算机组成原理这门课程的教学需要,是本文的需要研究方向。
1.3研究内容
本文的研究内容是建立起本校专用的远程在线教育平台,该平台以我校专业课程计算机组成原理为课程基础进行开发。研究的内容包括
(1)开发环境及相关技术的研究。选用Java语言作为开发语言,研究JavaEE技术以及Java Web技术作为平台开发的基本技术。开发模式选用MVC(Model,View,Controller)模式。开发工具选择JDK 1.8.0以及MyEclipse2017CI。
(2)平台前端开发技术的研究。选用LayUI框架作为前台开发框架,研究JSP,CSS技术从而进行前端页面的开发。研究JavaScript技术,进行JSP页面的监听与响应。研究HTML5技术,用于页面多媒体元素的开发。
(3)平台后端开发技术的研究。在进行后端开发时,研究Servlet技术用于后端开发。
(4)数据库管理系统的操作和使用以及数据库技术的使用。研究MySQL数据库管理系统,从而进行数据库结构设计以及相应的数据库开发。同时,研究JDBC技术作为数据库连接时使用的技术。
(5)服务器端技术研究。研究Tomcat技术,在平台开发完成后将形目部署到服务器端,实现通过互联网访问平台。
本论文的研究的最终目的在于打造出集在线视频播放,资料上传下载,作业在线发布与查阅,留言版等功能为一体的在线教育平台,同时,添加了与龙芯大赛设计相关的实践性内容来吸引相关意愿者参加。
二 开发技术简介
本章主要介绍了计算机组成原理远程教育平台开发过程中使用到的技术。
2.1开发技术简介
2.1.1 JavaEE简介
JavaEE(Java开发平台企业版)是基于JavaSE(Java开发平台标准版)的扩展,JavaEE继承了用途广泛的Java API接口,为开发者提供了用途广泛的开发特性。在企业级应用的开发过程中,JavaEE提供了诸如EJB(依赖注入),JTA(Java事务API),JSP(Java服务器页面)等特性,极大地提高了开发效率,缩短了开发时间,降低了软件复杂度[16]。JavaEE的架构是多层分布的,单独的一种服务由单独的层提供,由四个层次构成,即表现层,应用层,业务逻辑层,企业信息层。通过相关类和文件组装成的具有特定功能的应用程序部署到服务器端运行[17]。由于JavaEE架构上的先天优势,使得JavaEE适用于基于MVC开发模式的应用开发。
在计算机组成原理在线学习平台的开发过程中,使用了JSP,Servlet技术进行平台前后端的开发,JSP+Servlet是JavaEE平台开发的基础。JSP以及Servlet的使用使得平台能够实现前后端的数据交互与传递。Java EE 中的JDBC技术的应用使得平台能够访问数据库,操作平台使用过程中所需要的数据。
2.1.2 MVC开发模式简介
MVC(Model,View,Controller)开发模式适用于Web应用的开发。MVC开发模式将Web应用分成三个核心部分:Model,View,Controller。Model层中包括数据库操作类和实体类。Controller层不进行任何数据处理的操作,Controller层在接收来自用户的请求后将数据传送给Model层处理,将结果反馈给用户。View层又称视图层,View层主要收集并传递页面信息和用户请求,不参与任何的事物处理。[18]在本论文中,将MVC开发模式用于平台开发,将业务逻辑分层控制开发,使得开发效率有了极大地提高。
2.1.3 JDK简介
JDK(Java Development Kit),即Java开发工具包,是由Sun公司开发的用于Java开发的工具包,包括:编译工具javac,打包工具jar,文档生成器javadoc,查错工具jdb,编译后运行工具java,小程序浏览器appletviewer等工具。本平台通过使用JDK进行相应的类的编写,编译,查错,实现平台的功能控制。
2.2 前端技术简介
2.2.1 LayUI框架简介
LayUI框架是一款简单易用的前端UI框架,基于HTML/CSS/JavaScript构建而成,使用以及入门快,使用LayUI框架搭建前端页面简洁自在。LayUI框架支持的浏览器种类丰富,支持目前所有的主流浏览器。LayUI的模板是基于layui.js内部实现的异步模块加载方式,自定义一套轻量级的模板规范,是LayUI最核心的模板加载引擎。LayUI框架体积轻盈,组件丰富,并且支持大量的第三方组件,使用时不需要进行各种复杂的前端工具的配置,页面开发面向浏览器,极大地提高了前端页面的开发效率[19]。LayUI核心基础库时layui.js,在使用时,只需要通过script标签引入layui.js,就可以使用LayUI组件。LayUI框架提供了大量的页面元素,包括按钮,导航,面板,滑块,轮播,表格,表单等,使得在进行前端页面开发时,不必将当量的时间使用在页面布局的调整上。本平台在进行前端页面开发时大量使用了LayUI框架提供的组件,部分采用了LayUI框架的模板布局。
2.2.2 JSP简介
JSP是由Sun公司开发动态页面技术,JSP处于JavaEE四层结构架构中的应用层,主要由Java语言开发实现,它的出现,使得在XML与HTML文档中能够嵌入Java代码,实现了页面由静态向动态的转变[20]。在本平台的开发过程中,前端页面大多通过JSP实现,例如登录页面,在线课件阅读页面,通过与Servlet配合使用,在页面中嵌入相应的Java代码,处理前端页面发送的相应请求,在经过服务器端处理相应的数据后,将处理结果返回到JSP页面,使页面呈现出丰富的动态特性。
2.2.3 HTML5技术简介
HTML5广义一般指HTML(HyperText MarkUp Language),CSS(Cascading Style Sheet),JavaScript等3种技术的综合。HTML5是互联网的下一代标准,HTML5的出现旨在减少浏览器对于插件使用的过度依赖,通过自身就能够完成插件的一些功能[21]。在进行网页开发时,HTML(超文本标记语言)是必不可少的,页面的任意标签的使用都源自HTML。HTML5中增加了丰富的多媒体特性,使得网页内容可以在不依赖插件的情况下变得更加丰富,在本论文中,充分使用HTML5中的多媒体要素,如音视频播放标签等,实现了开发时平台中多媒体内容的体现。在实现本论文页面学习视屏播放功能时,就使用到了HTML5中新增的video标签,但是该标签支持的视频播放格式十分有限,仅支持mp4,ogg等格式的视频,这也使得本论文中的视频播放时仅支持mp4格式的视频。
2.2.4 JavaScript技术简介
JavaScript是网络开发中经常会使用到的脚本语言。在运行时,JavaScript随着程序的运行编译执行,而不会经过编译生成二进制字节码文件后再执行[22]。JavaScript具有跨平台特性,JavaScript在运行时并不依赖于操作系统,只需要浏览器支持即可。目前,主流浏览器如Chrome、FireFox等浏览器等能支持JavaScript。JavaScript的出现使得开发者能够与浏览器提供的丰富的功能进行交互,使得网页呈现出多样的动态特性。随着互联网的发展普及,JavaScript逐渐成为热门的浏览器端编程语言之一,本论文也选用了JavaScript用于网页页面的开发。基于JavaScript强大的功能特性以及目前主流浏览器都支持JavaScript的广泛适用性,在进行网页页面开发时,JavaScript成为非常高效的开发工具。在开发前端页面的过程中,基于JavaScript,实现了输入验证,错误信息提示,页面数据交互,页面动态效果等功能,在学习视频播放时,也通过JavaScript监听播放进度,动态弹出提示框,防止学生在学习时走神。
2.3后端技术简介
2.3.1 Servlet简介
Servlet与JSP同处于JavaEE四层架构中的应用层。Servlet是由Sun公司开发的动态Web资源服务器开发技术,Servlet通过HTTP协议与Web浏览器进行信息交互, 交互完成后Servlet将生成响应返回给Web服务器[23]。
Servlet的工作步骤如图2-1所示

图2-1 Servlet工作步骤
通过Servlet的使用,Web服务器中的资源能够通过对请求的分析得到相应的定位,结果能够返回到客户端,使得客户端与服务器端的交互能够顺利实现。
2.4数据库以及数据库开发技术简介
2.4.1 JDBC简介
JDBC(Java DataBase Connectivity),即Java数据库连接,是由Sun公司开发的用于通过Java语言连接数据库的标准类库,并且为建立数据库连接提供了多元的数据库接口。JDBC应用模型一般分为三层,过程分为这样几步:客户端发送HTTP请求到服务器端,服务器端通过JDBC加载相应的数据库驱动建立与数据库的连接,从而实现数据库的访问[24]。JDBC的使用,简化了开发过程中服务器端访问数据库应用的开发,使得对数据库的访问变得更加简单而方便。
2.4.2 MySQL简介
MySQL是一款开源的免费的关系型数据库管理系统(RDBMS),是目前市场上最流行的关系型数据库管理系统之一。MySQL是关系型数据库管理系统,将数据分表存放,数据存储灵活,在运行时速度也很快。MySQL使用SQL语言即结构化查询语言管理数据库,而SQL语言是最常用的数据库标准化语言,所以MySQL在使用时简单且易于上手[25]。MySQL由于其开源的特性以及体积小巧,运行速度快,使用成本低等优点,被广泛应用于各种开发场景。MySQL使用时配置简单,维护也不复杂,再加之其查询插入时拥有很高的效率,MySQL成为了进行Web开发时最常使用到的数据库。本论文在进行项目开发时采用了MySQL,也是因为MySQL数据库使用维护方便,开发成本低等特性。
2.5 Tomcat简介
Tomcat是一款轻量级的应用服务器并且免费开源,广泛应用在并发量不是很高以及一些中小型系统的场景中。在Tomcat的开发过程中,Sun公司也有所参与,所以Tomcat在使用的过程中支持JSP以及Servlet技术,为Java Web项目的开发部署带来了极大的便利。本论文在开发过程中使用的就是Java EE技术,选用Tomcat作为应用服务器能够为开发过程中使用的Java相关的技术提供极大的支持。
三 需求分析和可行性分析
本章主要对系统开发中的需求以及系统开发的可行性进行分析。
本论文从平台用户角色出发出发,展开需求分析,期间提炼出三大功能模块:信息管理模块、在线学习模块、学习资源管理模块。具体分析见3.1节。
3.1 需求分析
本论文针对计算机专业必修课程计算机组成原理进行系统开发,因此需要根据在线学习平台中所要的相关功能以及授课过程中涉及的相关内容进行开发,根据目前在线教育平台以及当下授课模式的分析与研究,再与任课教师进行探讨,总结出该系统需具有以下功能模块:
信息管理模块、在线学习模块、学习资源管理模块。从用户角色的角度出发,系统的总体用户功能如图3-1所示。
3.1.1信息管理模块
信息管理模块包括学生信息管理功能、个人信息管理功能以及登录密码重置功能。
从教师角色的角度出发,教师端功能如下所示。
(1)教师的需要是管理自己所执教的班级中学生的信息,包括查看学生信息,修改学生信息,重置学生密码,按学号查询学生信息。
(2)教师的需要是查看以及完善自己的个人信息,修改登录密码,修改安全验证邮箱。
(3)重置登录密码功能可以在教师忘记个人登录密码的情况下通过验证个人的信息(用户登录时的用户名)的方式发送验证码到用户提前设定的安全验证邮箱,获得此验证码后可以重置登录密码为平台初始登录密码。
在这里插入图片描述
从学生角色的角度出发,学生端功能如下所示。
(1)学生的需要是查看以及完善自己的个人信息,修改登录密码以及修改安全验证邮箱。
(2)重置登录密码功能可以在学生忘记个人登录密码的情况下通过验证个人的信息(用户登录时的用户名)的方式发送验证码到用户提前设定的安全验证邮箱,获得此验证码后可以重置登录密码为平台初始登录密码。
3.1.2在线学习模块
在线学习模块包括在线学习功能、在线讨论功能以及作业功能。
从学生角色的角度出发,学生端功能如下所示。
(1)学生的需要是在线观看教学视频,在线阅读教学课件。
(2)学生的需要是对当前发布到平台的教学资源进行下载。
(3)学生的需要是接收学习消息通知。
(4)学生的需要是在线查看本班级的作业以及自己的作业完成情况,并且能够在线提交作业。
(5)学生的需要是在线发布以及参与学习讨论。
从教师角色的角度出发,教师端功能如下所示。
(1)教师的需要是在线布置作业给自己所执教班级的学生。
(2)教师的需要是查看本班级的作业完成情况,查看学生提交的作业并且给出评分。
(3)教师的需要是发送学习通知给自己的班级。例如,在布置作业后,系统会自动发送作业通知给该教师执教班级的学生。
(4)教师的需要是发起并且参与学习讨论。
3.1.3学习资源管理模块
学习资源管理模块主要有学习资源管理功能,只有教师角色能进行学习资源管理。
(1)教师的需要是上传学习资源(学习视频,学习课件)供学生查看下载。
(2)教师的需要是查看已经上传到平台中的课件以及视频。
(3)教师的需要是删除平台中的课件以及视频。
3.2可行性分析
在目前的软件开发过程中,可行性研究是软件开发时极其重要的必经阶段。根据现有的条件能否满足软件开发在技术、经济以及实施方面是否可行是分析开发能否进行的前提。[26]本章将按照可行性研究中的技术、经济以及实施三个方面对本论文所要完成的系统进行可行性分析。
3.2.1技术可行性分析
在进行项目开发之前,对完成项目所需的技术手段在目前的科技状况下是否存在需要进行研究以及分析。在软件开发技术以及软件工程技术已经非常成熟的今天,开发在线教育平台的完全可行的。本平台使用的技术在目前都是已经较为成熟的技术。本平台开发使用的开发软件为MyEclipse2017 CI,数据库管理系统使用MySQL,开发语言选用目前非常流行的Java技术,开发框架使用成熟的Spring以及LayUI框架。本平台的基础功能与目前市场上在线教育平台以及MOOC平台相似,并且目前也有如OpenEdx这类开源的项目可以借鉴参考。在本平台开发过程中所使用的软件以及技术,都是已经经过开发者们开发使用过的技术,因此在技术层面,开发组成原理在线教育平台是完全可行的。
3.2.2经济可行性分析
本论文中所要完成的计算机组成原理在线学习平台的开发成本是完全可控的。本平台开发过程中所使用的开发软件MyEclipse2017 CI是从网络上获得的免费系统,数据库管理系统MySQL也是免费开源的,开发过程中使用的框架也是免费开源框架,开发的大部分成本均来自于服务器成本。因此,在开发过程中并未产生过量的开发成本。本平台是针对我校课程开发的在线教育平台,旨在广大师生提供一个良好简约的在线学习交流环境,在使用时,用户是不需要承担任何费用的。所以,本系统在经济方面是完全可行的。
3.2.3实施可行性分析
本论文中所要开发的在线教育平台是一个网络平台,在平台的开发的硬件以及软件需求以目前的资源都能够满足。在项目上传至服务器后,理论上用户均可以通过浏览器访问。平台的基本功能离不开教育功能,因此,平台教育功能的完备是对本平台最基本的要求。将课程教授过程中的基本功能融入平台功能之中,使得广大师生能够加强课程的课后学习,交流课程学习过程中遇到的疑问。本平台具备这些功能,因此,本平台是可以付诸使用的。
四 系统设计
在平台的开发过程中,对系统以及数据库的设计是开发过程中必不可少的环节。系统设计是让开发能够高效以及有序进行的关键。从第三章需求分析得到的需求出发,本章将要进行系统设计以及数据库设计。
4.1系统总体设计
在进行系统开发前,提前确定系统应当具备的功能以及特性进行开发前的重要环节。根据需求,确定平台应当具备的具体的功能与特性,做好开发前的准备工作,在开发时就能够做到目的明确,方向准确。根据需求分析,可以提炼出本平台中应当具有学生以及教师两种角色。教师以及学生权限的用户在登录后能使用的功能见表4-1。
角色 用户功能
教师 1.查看、增添、修改、删除本班学生信息,重置学生密码。
2.查看个人信息,修改密码以及安全验证邮箱。
3.查看、上传、删除平台资源。
4.布置、查看、按条件查找、批改作业,查看本班作业完成情况。
5.查看、发送通知消息。
6.查看、发布、参与讨论。

学生 1.查看个人信息,修改登录密码以及安全验证邮箱。
2.观看学习视频,阅读课件。
3.下载学习资源。
4.接收、查看本班通知信息。
5.查看本班作业,查看自己的作业情况,提交作业。
6.查看、发布、参与讨论。

4.2系统详细功能设计
进行系统详细功能设计时,根据图3-1系统总体功能需求提炼出平台中的功能模块,分别是信息管理、在线学习以及学习资源管理。
4.2.1信息管理模块
在该模块中,教师以及学生能够进行相关的信息管理,教师在登录后,系统能够根据教师所执教的班级的专业名称、年级名称、班级号找出班级中的学生,并通过表格的形式将学生信息显示在页面上,从而对学生信息进行增添,修改,删除,重置密码操作。学生在登录后,系统会根据学号找出对应的个人信息,从而学生能管理查看个人信息,流程如流程图4-1所示。
4.2.2在线学习模块
在在线学习模块中,教师在登录后,系统会根据教师的工号找到教师布置的作业信息。在布置作业时,会在系统中添加作业信息并且系统会发送作业通知给本班学生。在批改作业时,系统会根据学生信息找到学生上传到系统中的作业并且将分数录入到系统中。在讨论功能中,系统会根据讨论的编号找到讨论信息并显示在页面上,在回复时系统会根据讨论编号为回复确定唯一的回复编号同时将回复信息上传至系统中,在发布讨论时,系统会为讨论分配唯一的编号,并且将讨论信息上传至系统。学生在登录系统后,系统会自动加载平台中的学习资源供学生使用,学生可以观看学习视频,查阅课件。在教师发布作业以及通知消息时,
在这里插入图片描述
系统会将消息发送给对应班级的学生,学生能够接收阅读来自本班教师发出的消息通知。学生能下载平台中的学习资源。在作业功能中,系统会通过学生学号确定学生班级,并且将班级的作业信息提供给学生,学生能够查看作业信息并提交作业。学生的讨论功能与教师相同。流程如图4-2所示。
在这里插入图片描述
4.2.3资源管理模块
在本模块中,教师可以查看已经发布到平台的资源,教师也可以上传资源到平台,教师也可已下载其他教师上传的文件,同时教师可以删除已经发布到平台的资源。流程如流程图4-3所示。
在这里插入图片描述
4.3数据库设计
数据模型是抽象的模型,是抽取数据的特征建立的模型。数据模型是对现实世界的抽象,数据模型是数据库系统的核心以及基础。本节旨在根据计算机组成原理在线学习平台中的所要使用的数据进行抽象提取从而建立概念模型,根据概念模型转换为计算机能够识别的逻辑模型。
4.3.1数据库需求分析
根据对平台的需求分析,从而可以确定平台中所需要具有以及处理的数据。平台中的用户角色有教师以及学生两类,所以需要有学生用户表以及教师用户表来存储用户信息。平台通过班级信息来确立教师与学生之间的联系,所以需要有班级表来存储教师与班级之间的信息。教师能向学生发送通知消息,所以应当建立消息表来存储教师与消息的信息。教师在平台布置作业后,应该将作业信息与教师信息关联,因此平台中应当设立作业表来存储作业信息。学生提交作业后,平台应当录入提交作业的信息,因此需要建立作业提交表来存储作业提交信息。教师与学生在发布讨论后,平台需要录入讨论信息,因此需要建立讨论信息表来存储讨论信息。在教师与学生争对某讨论发布回复后,应当将回复的相关信息存入平台,因此,需要建立讨论回复表来存储讨论回复信息。
本平台数据库管理系统使用的是MySQL。该系统操作简单,使用方便,体积小,数据操作速度快,且数据安全性也有保障。
4.3.2数据库概念结构设计
通过对计算机组成原理在线学习平台中的所涉及的数据进行抽象,可以通过数据建立起相应的概念模型,并且建立起实体之间的联系。在对数据以及关系进行抽象后,可以得到7个实体。
(1)学生实体
学生是平台的用户之一,学生实体的实体属性如图4-4所示。
在这里插入图片描述
。。。。。。。。。。。。
。。。。。。。。。。。。。。。。。
。。。。。。。。。。。。。。。。。。。
。。。。。。。。。。。。。

论文下载地址:请点击》》》》

  • 3
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论
一 绪论 1 1.1研究的目的和意义 1 1.2国内外研究现状 1 1.3研究内容 3 二 开发技术简介 3 2.1开发技术简介 3 2.1.1 JavaEE简介 3 2.1.2 MVC开发模式简介 4 2.1.3 JDK简介 4 2.2 前端技术简介 4 2.2.1 LayUI框架简介 4 2.2.2 JSP简介 4 2.2.3 HTML5技术简介 4 2.2.4 JavaScript技术简介 5 2.3后端技术简介 5 2.3.1 Servlet简介 5 2.4数据库以及数据库开发技术简介 6 2.4.1 JDBC简介 6 2.4.2 MySQL简介 6 2.5 Tomcat简介 6 三 需求分析和可行性分析 6 3.1 需求分析 6 3.1.1信息管理模块 7 3.1.2在线学习模块 8 3.1.3学习资源管理模块 8 3.2可行性分析 8 3.2.1技术可行性分析 8 3.2.2经济可行性分析 9 3.2.3实施可行性分析 9 四 系统设计 9 4.1系统总体设计 9 4.2系统详细功能设计 10 4.2.1信息管理模块 10 4.2.2在线学习模块 10 4.2.3资源管理模块 12 4.3数据库设计 12 4.3.1数据库需求分析 12 4.3.2数据库概念结构设计 13 4.3.3 数据库逻辑结构设计 15 4.3.4数据库物理结构设计 19 五 系统实现 19 5.1信息管理模块的实现 19 5.1.1教师端学生信息管理功能实现 19 5.1.2 重置登录密码功能实现 22 5.1.3学生端个人信息管理功能实现 24 5.2学习功能模块实现 25 5.2.1学生端学习视频播放功能实现 25 5.2.2学生端课件阅览功能实现 26 5.2.3学生端资源下载功能实现 27 5.2.4学生端作业功能实现 28 5.2.5学生端在线讨论功能实现 30 5.2.6教师端作业发布功能实现 34 5.2.7教师端作业查阅功能实现 35 5.3学习资源管理模块 36 5.3.1上传功能实现 36 5.3.2平台资源管理功能实现 37 六 系统发布及测试 38 6.1系统发布 38 6.1.1将web项目部署在Tomcat上 38 6.1.2将Tomcat部署到服务器端 39 6.2系统测试 39 6.2.1测试环境 39 6.2.2测试内容 40 七 总结 42 参考文献 42 致谢 44
学堂在线是一个在线教育平台,提供各种课程和学习资源。其中包括计算机组成原理课程。该课程主要涉及计算机的基本概念、类型、主要特点、常见类型、诞生与发展、系统层次结构以及性能评价指标等内容。为了满足计算机组成原理专业课程的卓越课程建设需求,研发了学堂在线计算机组成原理远程教育平台。该平台包括信息管理模块、在线学习模块和学习资源管理模块等三个功能模块,采用了Java EE技术、LayUI框架和MySQL数据库管理系统等技术。平台的内容基于计算机组成原理的原则,突出了计算机组成原理课程的特点,满足在线和离线教学的需求。通过学堂在线的计算机组成原理课程,学生可以系统地学习计算机系统的概述、计算机的基本概念和类型、计算机的主要特点和常见类型、计算机的诞生与发展、计算机系统的层次结构以及计算机的性能评价指标等知识。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [基于javaweb计算机组成原理远程教育平台研究开发](https://blog.csdn.net/weixin_40228600/article/details/116784709)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [“计算机组成原理-电子科技大学-学堂在线”———课堂笔记——第一章计算机系统概述](https://blog.csdn.net/weixin_44953600/article/details/108689756)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员小蛋

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值