基于SSM框架的大学生自主学习网站的设计与开发/在线学习系统

摘  要

随着信息技术的不断发展,催生了许多新的行业产生,比如在线教育行业就是一种新兴的技术产业。尤其是在今年,武汉的疫情导致了大量学生无法正常上课,只能在网络上进行在线教育学习。这让原本仅仅是运用于公司企业远程办公的在线交互行业迎来的新的发展拐点。大量的学校要求学生下载相关软件,使用APP进行在线交互学习。通过网站的方式在线学习新学期知识,以弥补疫情为教学带来的不利影响。而本人所开发的在线学习网站就是一个为学生提供在线学习的平台。

在线学习网站的设计上,采用浏览器/服务器架构方式搭建,在前台栏目的设计上,采用JSP页面技术和JQuery框架以及Ajax技术实现。在后台的功能代码设计上,采用Java语言进行编写,主要代码编写平台为MyEclipse开发平台,在功能逻辑的框架设计上,主要采用Java Web项目中常用的SSM框架模式进行开发,在数据安全保护的选择上采用MySQL数据库。在线学习网站主要实现了教师与学生之间的交互,学生在本平台上学习教学内容并且提问,而教师则在本提供教学知识信息的同时在线回答学生提出的问题。

关键词:JSP;SSM;在线学习

ABSTRACT

With the continuous development of information technology, many new industries have emerged, such as online education industry is a new technology industry. Especially this year, the epidemic in Wuhan has led to a large number of students unable to attend classes normally, so they can only conduct online education and learning on the Internet. This is a new turning point for the online interaction industry, which was only used in the company's enterprise remote office. A large number of schools require students to download relevant software and use app for online interactive learning. Online learning of new semester knowledge through website is to make up for the adverse impact of the epidemic on teaching. The online learning website I developed is a platform for students to provide online learning.

In the design of online learning website, the browser / server architecture is adopted, and in the design of foreground column, JSP page technology, jQuery framework and Ajax technology are adopted. In the background of the functional code design, Java language is used to write, and the main code writing platform is MyEclipse development platform. In the framework design of functional logic, the common SSM framework mode in Java Web project is mainly used for development, and MySQL database is used for the selection of data security protection. Online learning website mainly realizes the interaction between teachers and students. Students learn teaching content and ask questions on this platform, while teachers answer students' questions online while providing teaching knowledge information.

Key words:JSP; SSM; online learning

目  录

第一章  绪论

1.1研究背景

1.2研究意义

1.3国内外现状分析

1.4研究内容 2

第二章  开发技术

2.1JSP开发技术

2.2SSM框架技术

2.3MySQL数据库

2.4Tomcat服务器

第三章  系统需求分析

3.1系统可行性分析

3.2系统整体需求分析

3.2.1需求获取

3.2.2角色功能权限划分

3.3系统主要功能需求分析

3.4系统非功能性需求分析

第四章  大学生自主学习系统设计

4.1系统概要设计

4.1.1系统架构设计

4.1.2系统功能结构设计

4.2系统详细设计

4.3数据库设计

4.3.1数据库E-R图设计

4.3.2数据库物理表设计

第五章  大学生自主学习系统实现

5.1学生用户

5.1.1查看教学资料

5.1.2查看教学视频

5.1.3查看学习资料

5.1.4在线答疑

5.1.5注册登录

5.1.6修改信息

5.1.7单元自测

5.2教师用户

5.2.1登录

5.2.2修改密码

5.2.3教学资料管理

5.2.4学习资料管理

5.2.5教学视频管理

5.2.6答疑回复

5.3平台管理用户

5.3.1学生管理

5.3.2教师管理

5.3.3登录

5.3.4修改密码

第六章  大学生自主学习系统测试

6.1测试方案

6.2功能测试

6.3性能测试

6.4测试结果

结束语

  

参考文献

第一章  绪论

1.1研究背景

随着信息技术的不断发展,催生了许多新的行业产生,比如在线教育行业就是一种新兴的技术产业。尤其是在今年,武汉疫情的突然发生导致了学校在教学上的措手不及,寒假时间大大的延长,直接导致学校的教学课程严重落后,这也导致学生只能在网络上进行在线教育学习。这让原本仅仅是运用于公司企业远程办公的在线交互行业迎来的新的发展拐点。远程在线行业原本只是被应用于企业之间的办公会议,而此次疫情的影响彻底让在线教学走进了人们的视野。由越来越多的学校学生开始重视在线教育。大量的学校要求学生下载相关软件,使用APP进行在线交互学习。通过网站的方式在线学习新学期知识,以弥补疫情为教学带来的不利影响。

1.2研究意义

在线自主学习网站的实现意义在于,让网络教学成为一种可能,教师在网络上传授知识,学生在网络上获取到知识,这是本网站最核心的意义所在。作为学生,通过快速的互联网信息传播,采用浏览器在线浏览学习网站,学习相关课程知识与视频,对于已学习的课程还可以进行测试。还可以采用搜索等方式快速寻找自己想要的知识信息。而作为知识的提供者教师,可以采用网络的方式对学生的学习情况进行了解,通过测试相关信息确定学生对于知识点的掌握度。提供自己的教学视频供学生观看。这些网络化,系统化的互动方式是在线学习网站所建立的初衷。让教师与学生足不出户就可以进行学习上的交流与互动。

1.3国内外现状分析

目前国际上讨论的互联网教学主要体现在慕课,微课,翻转课堂。2008年,首次提出“大规模开放在线课程”(慕课)一词。所谓“慕课”,是大规模在线开放课程“MOOC”的英语简称,其中,“M”代表Massive(大规模),第二个字母“O”代表Open(开放),第三个字母“O”代表Online(在线),即网上学习,与名校视频公开课只提供课程资源不同,“慕课”实现了教学课程的全程参与。2012年被称作慕课“元年,三大平台Coursera,Udacity和EDX成立,意味着这一新兴事物的发展取得了新的突破。接下来,法国,日本、中国纷纷加入其中。美国新媒体联盟(New Media Consortium,NMC)于2013年发布的《地平线报告》指出,慕课引发了教育有史以来最快速的增长。微课“微课程”(micro lecture)最早是由位于美国新墨西哥州圣胡安学院高级教学设计师、学院在线服务经理,戴维.彭罗斯于2008年秋首创的。戴维.彭罗斯把微课程称为“知识脉冲”(knowledge burst)。法国,日本、中国的高校纷纷加入其中。美国新媒体联盟(New Media Consortium,NMC)于2013年发布的《地平线报告》指出,慕课引发了教育有史以来最快速的增长。翻转课堂译自“Flipped Classroom”或“Inverted Classroom”,是指将学习的决定权从教师转移给学生,重新调整课堂内外的时间分布。2011年,美国青年教育家Salman Khan将一种全新的教学方式翻转课堂介绍给全世界,翻转课堂以此迅速蹿红美国并影响全世界教育界。越来越多的学校将翻转课堂应用到教学实践并取得良好的教学效果,讨论翻转课堂的运用目前已经成为全世界最热门的教育改革和教育创新话题。从上述现状看,预计在今后很长的时间内以慕课,微课,翻转课堂为主导的网络课程都将影响教育发展的方向。

1.4研究内容

在线自主学习网站在设计上,最核心的设计问题是如何解决教师与学生之间的交互,通过视频方式交互,或者通过提问方式进行交互。学生提出问题,学习视频,教师解答问题,发布教学视频。通过高度信息化的网站实现,解决无法正常教学的问题,在一定程度上缓解开学后学生的学习压力与教师的教学压力。同时,采用在线教学方式的学习,学生可以反复的观看,比课堂教学的效率更高。教师所布置的试题信息由系统自动打分,也提高教师的教学效率,从而将精力更多的投入到教学研究中去。

第二章  开发技术

在此次开发的大学生自主学习网站中,本人主要采用MyEclipse8.5版本编辑器进行代码的设计,主要设计语言为Java语言,在服务器调试设计上使用编辑器自带的Tomcat服务器进行在线测试与调试。本系统在开发结构上主要采用B/S架构,用户可以采用网页方式登录页面。在系统代码设计框架上采用SSM框架技术,在数据库管理软件的使用上,则采用了MySQL数据库保证数据存储安全。

2.1JSP开发技术

JSP页面的代码处理逻辑在于开发人员通过JSP页面开发技术设计的网页提交相应的需求,而后需求会通过Java开发平台传递到测试服务器端。在测试服务器中,会调用虚拟机对传递过来的JSP页面代码进行编译与解释执行。通过虚拟机将页面开发所设计的代码转换成服务器类型的相关代码,转换完成后再通过编译器实现页面代码向class类型的字节文件转换。全部转换成功后,会调用Servlet容器类中的容器将处理完成后的逻辑回应信息传递到前台JSP页面中,告知开发人员。

采用JSP开发技术的好处在于,使用JSP页面开发技术能够有效的将用户端也就是网页中的显示代码与后台负责逻辑分发的业务层代码进行分离。在JSP页面开发技术中,有专用的页面样式开发方法,对前台页面的显示层进行样式设计与开发,而JSP页面开发技术中的JavaBean则被专门用来对业务层中的逻辑信息进行转发与处理。在数据库连接方面,采用JDBC插件技术的方式实现数据库数据调用与逻辑处理的无缝对接。这种业务层,数据层,显示层三层分离的方式能够减少开发人员对代码的维护难度,在后期需要进行延伸或者修改时,开发人员能够更快的找到相对应的接口进行修改与完善。另外,JSP页面开发技术也属于J2EE开发的一个分支,所以该技术与JAVA语言是一致的,也是面向对象的,这种特性代表JSP页面开发技术能够与JAVA语言一样,具有跨平台性。开发人员开发出的JSP页面能够被以组件的方式在项目中多次应用。对于页面开发而言,极大的减少重复的页面开发时间。

JSP的四大作用域主要有request,application,session,page四个部分,这四大作用域共同实现JSP页面开发的各种功能。

在JSP页面开发过程中,request对象与session对象是相互依存的,可以将客户的需求比作request对象,session对象比作服务器,不同的客户可以同时访问同一个服务器。而作为网站只能同时存在一个服务器,也就是只能同时存在一个session对象。而且每一个用户端的session都是不同的,当客户在前台发送request时,如果在网站的服务器中不存在session,服务器会自动生成一个session来应对用户的请求。当用户长时间不使用网页时,服务器会对其session进行自动的更新。当客户使用时间小于一定的时间差时,服务器不会更新session,而是将其进行共享。一般情况下,当客户关闭网页时,session对象就会自动被删除。当重新打开网页时,服务器此时会重新生成session。这些由服务器端生成的session对象,在后台业务层中,可以通过get()方法来获取值。因为其特有的数据存储功能,所以可以被用来存储如登录名,登录密码等信息。

Application是一种全局域,何谓全局域,就是无论开发人员进行怎样的开发,当Web项目启动时,改对象就会产生,并且其数值在赋值后不会发生变化。虽然该对象会被用来存储一些固定不变的数值,但是为了确保不会出现脏数据的情况,一般开发人员不会对该对象的数值进行修改赋值。

2.2SSM框架技术

SSM框架是Spring框架,SpringMVC框架和MyBatis框架的简称。三种框架经常被整合在一起用于Web项目的开发,因此其被简称为SSM框架技术。该框架技术也是目前Java Web项目开发中最流行的一种开发方式。SSM框架的核心思想还是继承的MVC开发思想。在MVC模式的基础上通过框架的方式对Web项目进行更为细致的划分。在层级上增加了服务层与Dao层,减少了数据模型层。在SSM框架中Spring框架使用切面编程与控制反转两项技术对业务逻辑进行管理,SpringMVC框架则负责需求的转发以及对视图的管理。MyBatis框架则主要负责后台数据的相关处理与持久化服务。

Spring框架中主要运用于此次Web项目开发的功能是切面编程与控制反转。什么是控制反转。当开发人员需要使用对象时,通常情况下首先要对这个对象进行实例化。在对象实例化使用后,需要将使用后的对象销毁,。在Spring框架中,这种实例化与销毁操作都是由Spring来做,开发人员只需要直接使用对象就可以。这就是控制反转功能。而切面编程功能则主要运用于业务编程中。当开发过程中,需要实现类似的逻辑调用时,可以通过AOP编程方式,将该种逻辑调用操作进行封装配置。而后需要使用时,直接采用框架方式调用即可。

SpringMVC框架主要继承与Spring框架的一些特性,其主要作用在于,通过对控制器,模型,对象角色等等进行分离,能够让开发人员更容易使用。

MyBatis框架是一种新兴的数据持久层框架管理技术。在此之前,Java Web项目开发人员曾经开发出Hibernate框架技术负责数据层的持久化操作。在MyBatis框架中,采用了另外一种方式实现数据持久化,通过Maps方式将数据库连接所需的配置文件参数信息进行配置。以往在MVC模式开发中,调用数据库进行数据的相关操作时,需要通过编写SQL语句与Java代码相拼接。而现在采用MyBatis框架后,直接在xml文件中通过注解实现数据调用以及配置。数据操作中所使用的数据对象通过POJO类方式来映射。

2.3MySQL数据库

MySQL数据库作为一款小型的数据库管理软件,深受软件设计人员的喜爱,在Web项目的开发中,MySQL数据库是使用率最高的一种数据库管理软件。不仅仅是因为其体量小,方便使用。而是在Web项目应用的开发上,MySQL的开发人员对其兼容性进行了更好的调整。使其能够适应Web项目开发所需要的各种数据调用请求。在数据字段的调用与存取方面,MySQL数据库软件主要采用关联表的方式存储用户数据,而不像其他数据库那样采用非关联式存储数据。这种数据调用方式能够提高数据调用与存储的反应速度。

MySQL数据库中对数据的查询,删除,修改,增加等操作,都可以使用SQL标准查询语句进行调用。在数据库底层源码的设计上,MySQL数据库通过分享自己源码的方式来提升开发人员的使用率,从而提高与各种软件开发项目的包容性。正是其拥有的这些优点,使得大量的开发设计人员都会采用MySQL数据库开发小型项目。在Java Web项目开发中,使用JDBC控件的方式能够使得项目能够实时调用MySQL数据库中存储的数据。

2.4Tomcat服务器 

Tomcat测试服务器是Java开发中较为常用的测试服务器,其通常情况下是与MyEclipse开发平台一起封装。开发人员在使用MyEclipse平台时,就可以使用Tomcat测试服务器对开发的Web项目进行在线测试,模拟上线后的环境。Tomcat测试服务器的性能十分稳定,其自带的浏览器功能与客户正常使用的浏览器相似,使用方法也简单。所以在测试过程中,完全可以模拟客户使用Web网站时的真实情境。所以该测试服务器得到了广大开发人员的青睐。

Tomcat测试服务器在底层代码结构上与Java语言类似,均为开源且免费的。这种优势可以减少开发人员在开发过程中的项目测试调试成本。开发人员通过Tomcat测试服务器在线测试调试Web项目,能够更加便捷的在开发过程中就发现代码中存在的bug以及逻辑错误。在发现的同时可以及时的修改代码。从而提高Web项目的开发速度与效率。

第三章  系统需求分析

3.1系统可行性分析

从开发的人力成本分析,本人作为大学生自主学习网站的唯一开发人员,对于SSM框架及时以及软件项目开发的流程都较为熟悉,在之前的课程设计中就参与多一些小项目的开发,具有一定的设计经验,同时大约使用一个学期的开发时间也是较为充裕的。同时,学校的图书馆以及知网上提供了大量的学术文献供我查阅,为本人的大学生自主学习网站开发提供理论依据,当我遇到开发问题时,可以向导师进行请教,在开发完成后,所有的系统调试,部署,发布任务都由本人进行完成,总的来说,网站在人力成本方面几乎没有,是可行的。

从开发的硬件成本分析,开发大学生自主学习网站所采用的硬件设备都为本人的笔记本电脑,而作为网站的使用者而言,其硬件需求几乎没有,只要其有一台计算机即可进行在线浏览,在服务器的部署上,可以采用较为廉价的云服务器进行部署,所以,在用户端的硬件成本以及本人开发所需要的硬件成本上,花费很少,可以接受。

从网站开发的回报分析,主要是网站在设计完成后是否能够带来良好的经济效益,对于大学生自主学习网站的管理方而言,通过网站的实现能够为大学生自主学习带来良好的体验,通过在线学习的方式,学生能够更简单的接收到知识,对于网站而言,可以采用广告方式收取一定的流量费用,或者通过自聘老师的方式付费教授课程,这都是网站创造经济收入的可行之处。所以在回报上,是可行的。

3.2系统整体需求分析

3.2.1需求概述

大学生自主学习网站在进行需求分析时,需要按照软件工程开发中的需求进行。

通过对大学生自主学习网站中的在线学习与答疑流程进行观察与分析,确定网站在开发过程中所涉及到的使用群体,主要分为三大类:第一种为大学生用户,主要使用网站在线学习教学知识。第二类是教师用户,主要使用网站在线答疑与提供教学知识,第三类为网站的管理人员,主要对网站的各种功能进行维护。在系统的使用上,也分为前台使用与后台管理两大部分。

确定系统的使用人员后,对这些使用人员的实际需求进行调研,制定详细的需求调问卷对三种用户进行意见的征集。对学生用户,教师用户的使用需求意见进行记录,对网站人员的管理需求进行确定。在所有需求都完成后,对需求进行整理,最终获得系统前台的功能要求主要有:大学生用户查看教学资料,查看教学视频,查看学习资料,在线答疑,注册登录,修改信息,单元自测需求等等。后台的主要功能需求有学生管理,教师管理,教学资料管理,学习资料管理,教学视频管理。答疑回复等需求。

3.2.2角色功能权限划分

为了实现对不同角色的分权限管理,从而让各个用户各司其职。学生用户需要登录网站后才能够进行在线学习与提问,教师用户需要登录后才能够在线答疑回复。管理人员需要登录才能够管理各种功能,这三种用户的权限如下:

(1)学生用户登录系统后,可以查看教学资料,查看教学视频,查看学习资料,当学习出现问题时可以在线向老师提问,并且可以修改自己的个人信息,在学习完成后可以单元自测来测试自己学习成果。

(2)教师用户登录系统后,可以修改密码,同时具有教学资料管理权限,学习资料管理权限,教学视频管理权限,答疑回复权限。

(3)管理员用户登录系统后,具有学生管理权限,教室管理权限,登录权限,修改密码权限。并且教师用户所有的管理权限管理员也拥有。

3.3系统主要功能需求分析

在线提问与回复

1、学生用户进入系统后,可以根据学习的知识在线向教师提问,教师根据提问的信息对学生进行回复。其详细的用例描述如表3-1所示:

表3-1在线提问与回复用例描述

用例名称

在线提问与回复

用例说明

通过网站在线答疑

参与者

学生用户,教师用户

前置条件

学生,教师用户登录网站

基本流程

  1. 学生用户登录网站
  2. 点击在线答疑
  3. 输入自己想要咨询的问题
  4. 点击提交
  5. 教师用户登录系统
  6. 点击在线答疑
  7. 查看学生提问信息
  8. 输入回复内容
  9. 点击提交,答复成功

2、学生管理

管理人员管理学生基本信息。其详细的用例描述如表3-2所示:

表3-2学生管理用例描述

用例名称

学生管理

用例说明

在网站后台对学生进行管理

参与者

网站管理者

前置条件

登录系统

基本流程

  1. 管理人员点击学生管理
  2. 查看所有学生信息
  3. 对学生信息进行删除
  4. 删除成功
  5. 返回学生管理
  6. 审核学生信息
  7. 审核成功
  8. 学生可以使用账户

3、教学资料管理

教师用户登录到后台,上传教学资料,更新教学资料。其详细的用例描述如表3-3所示:

表3-3教学资料管理用例描述

用例名称

教学资料管理

用例说明

后台管理教学资料信息

参与者

网站管理人员

前置条件

登录系统后台

基本流程

  1. 管理人员点击教学资料信息管理
  2. 查看所有教学资料
  3. 删除教学资料
  4. 提示删除成功
  5. 返回教学资料管理
  6. 添加教学资料信息
  7. 输入教学资料
  8. 添加成功

3.4系统非功能性需求分析

在设计大学生自主学习网站过程中,除了对网站的业务以及相关的功能需求进行分析外,还需要对网站的非功能性需求进行设计,非功能性的需求能够影响网站的使用寿命以及开发质量。

(1)界面可适配要求

作为学生用户和教师用户,可能采用不同的客户端浏览器进行在线学习与在线答疑,所以在设计上要求网站页面在栏目设计上做到适配性高,能够根据用户浏览终端进行响应式的设计布局,保证不同浏览器下的网站布局美观大方。

(2)高流量访问引起的并发

随着网站的使用用户逐渐增加,在设计上需要考虑多用户同时使用网站时所引起的并发操作。

(3)稳定性需求

网站的三种使用用户在使用网站时,使用时间不受到限制,所以在设计上需要考虑设计的稳定性,不间断提供服务。

(4)提供接口

在设计过程中,后期需要进行功能的扩展或者其他数据的调用,需要开发人员设计出通用接口,便于调用各种数据以及用户系统功能的后期迭代。

 

 

 

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

一枚小小程序员哈

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

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

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

打赏作者

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

抵扣说明:

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

余额充值