随着互联网技术的普及,人们的生活节奏不断加快,人们对网络的依赖越来越加深,网络在人们的生活中也越来普遍。由于近年新型冠状病毒疫情的发生,为了避免传染,越来越多的人们减少出门,选择通过互联网来实现自己的各类需求。。
并且随着互联网时代的来临,互联网在线学习已经成为一种主流学习方式。互联网用户足不出户就能通过网络学习知识,进行互动、提出自己的疑问且能够得到很好的解答。正是看到在线学习平台的便利性、以及无线的前景,所以选择在线学习平台作为自己的毕业设计。
在线学习又称网络学习,是一种将网络用在在线学习的全新方式。一个由在线学习网站和网络技术平台构成的全新互联网环境。在线学习平台是集互联网技术、计算机网络相关技术、mysql数据库相关技术和多媒体相关技术为一体的互联网在线学习平台。
在线学习平台表现在三个方面:第一方面在线学习平台拥有丰富的课程知识和后台数据。在互联网化的在线学习界面的平台上,不受实体展示空间的限制。在线学习平台为互联网用户提供了各种学习方法,互联网用户可以选择不同的学习课程和学习方法。第二方面在线学习平台能够促进学习过程中产生的沟通和问题排除。互联网用户可以通过在线学习平台中的评价等功能模块在线向老师寻求帮助和并且得到老师的解答。第三方面在线学习平台拥有完整的全套学习功能。互联网用户可以查看课程的回放视频以及课件等信息,查看相关课件,学习后可以提出对自己比较困难的疑难问题。
突然爆发的流行病使大家措手不及。但在中央和国家领导下,新冠已经取得阶段性大胜利。然而,疫情还是存在,传染的风险依然有可能。在线学习平台已经成为能够确保广大学生顺利完成学业的有效途径。国家颁布的“不停课”指示,将在线学习平台推向了高潮。教育行业的红利已经来到,而且来得这么的突然。为了得到这波红利,迅速得到广大的市场,专注于企业办公的各大厂商已经开始了在线学习平台的搭建。腾讯课堂是一家知识教育公司,开通了在线直播的带有教学的功能。还有小通、云朵课堂等等在线学习平台。教育领域的平台多年来一直在发展,但现在迅速增长。的确,在当下的互联网时代,互联网速度非常快,这也是在线学习平台最大的技术保障。在线学习平台蓬勃发展的主要原因是为了解决一些线下学习无法得到解决的问题。
第一条:昂贵的教学成本;大家都知道,全球地价持续上涨,但民众的收入却没有跟上。因此,对于大家来说,当收入的单位价格没有多少调整空间时,支出就会继续增加,导致学习成本的增加。
第二条:内容不容易呈现;线下教学最常见的情况就是很多的学生和一块黑板的教室。教师用粉笔在黑板上画知识的速写、PPT和公式。然而,在今天这个知识爆炸的时代,能用粉笔写出来的知识实在有限,无法实现互联网中音乐、视频、链接等丰富的文字内容。
第三条:时间利用率低;显然,在线下的教育过程中,总会有一些学生因为各种原因不来上课,教师也不会因为一个学生缺席而不上课。这样,未到的学生的学习内容就跟不上了。
在线学习平台解决了上述所有问题,所以研究并开发一个在线学习平台是很有必要的
系统开发所运用的主要的平台是IDEA平台,全称IntelliJ IDEA,是JAVA编程语言开发的集成环境,最大的优点是可以跨平台部署,也能够部署WEB程序。本系统还安装了Tomcat服务器,通过Maven中间件管理项目所需Jar包,方便项目各组件的管理,保证项目的运行。
Java开发语言是一种面向对象的编程语言。它吸收了C++语言的优点,抛弃了C++难以理解的多重继承概念,抛弃了指针。因此,java开发语言有强大的功能和良好的易用性。 Java语言是静态面向对象编程语言的代表,它完美地体现了面向对象编程的优点,允许程序员用面向对象的思维进行复杂的编程,提高了程序员的工作效率。Java具有简单、面向对象、分布式、健壮、安全、平台无关和可移植、多线程、动态等优点。 同时,Java可以编写各种应用程序、web应用程序和一些分布式嵌入式系统程序。
JQuery框架是一个快速、简洁的JavaScript语言的框架,是一款非常优秀的前端框架,它降低了前端的开发工作量,封装了JavaScript常用的各类组件,包括获取页面的值、页面的正则校验、页面的弹窗效果、post、get请求等等,它的出现让前端的开发更加简洁、降低前端代码量、是前端的代码更加简洁,更容易维护,实现一个一个动态的前端页面效果。
Springboot是一个叫pivot公司研发出来的一个新的框架。简化了spring框架应用过程中的各种复杂配置。 springboot框架采用了默认配置的方式去加载基础的配置文件,开发人员不需要在搭建框架的初期做太多的配置,可以做到拿来即用,降低开发人员的时间成本,以及框架搭建的难度,提高开发的效率。 Springboot可以成为蓬勃发展的互联网发展领域的先驱。
在网站项目的开发过程中,网站的响应效率是十分的重要的,用户通过链接访问此网站,网站向后端服务发出请求,后端服务连接数据库,根据请求指令处理相关的数据,然后根据业务需求处理相关的逻辑流程,处理完毕将数据返回给浏览器,反馈给用户。在这整个过程中,用户访问的页面属于试图层面、处理业务逻辑数据控制层面、请求数据属于数据模型层面,这种分为不同层面的模式我们称为MVC模式。主要内容如下:视图层:负责处理数据,整理数据的格式,数据的样式最终按照一定的格式展现给用户进行浏览以及相关的操作。控制层:接收用户提交的数据,然后按照一定的逻辑进行相应的操作,然后把数据交给下一层。数据库层:按照上一层传输过来的逻辑进行数据操作,包括数据的删除、数据的修改、数据的搜索、数据的添加等数据层面的操作,操作完将指令返回给上一层。
随需而变过去, Spring引导框架不能替代Spring框架。它是一个单独的开发框架,可以改进所有开发人员。它包含许多第三方软件库,可以在springboot中不进行配置就立即使用,从而消除了spring繁琐的配置文件。一般来说,springboot只需要开发人员花一点时间来启动项目。快速实施通过lbmd引擎,应用系统的开发变得固定,形成了一种新的开发模式:使用leap工具构建应用系统,或使用leap运行应用系统,从而在减少资金和工作量的前提下,达到快速构建大型复杂项目的目的。leap提供的“模型驱动”可以灵活部署,只需少量代码即可完成大型项目,这大大减少了Java程序员的工作量,降低了出现bug的风险。
SpringBoot采用SOA框架来简化开发。同时,它还可以使用二进制开发机制完成SDK。这也是为什么许多开发者喜欢springboot。
可行性分析指的是分析该系统能否被开发出来,并且开发出来后能不能使用,这需要我们对系统的所有功能进行全面分析后,进而判断出这个系统是否具有开发的意义。经过分析得出,该系统能够使商家或者企业对房源和用户的信息管理更加方便,节省很多财力物力,同时用户可以更加轻松的从网站中就可以获取想要的数据,打破了以往用户想要租房子还要通过电话等途径向房屋管理者询问信息的传统方法。而对系统的可行性分析也可以发现当前对于房屋管理和用户寻找房源方法中存在的不足之处,并加以改进。
本基于JAVA的在线学习系统系统采用Java语言作为后端开发语言,Mysql作为数据库,HTML、javascript等语言作为前端语言,以上语言都有成熟的框架,这些框架让编码没有那么难,所以,本基于JAVA的在线学习系统系统在技术上是可行的。
本JAVA的在线学习系统系统采用传统的系统操作形式,通过浏览器打开本系统,各项功能按照使用前后顺利平铺在左侧菜单栏,符合用户的操作习惯,所以本在线学习系统在操作上是可行的。
操作可行性就是系统操作起来简单,任何有电脑基础的用户都能够不需要培训就能直接使用网站的各项功能,本网站是传统的BS架构的系统,不需要安装客户端就能直接访问,通过浏览器直接输入网址进行访问,简单便捷,所以线学习系统在操作上是没有障碍的,任何用户都能直接使用。
系统的综合性能要从三个方面去考虑,第一个是该系统的安全性能,也就是数据安全性能,本系统采用的是角色分离设置,就是用户和管理员的界面分开,使得用户和管理员的操作权限不同,保证数据的安全性。第二个是该系统的功能是否完善,本系统可以对数据进行想要的增删改查,功能也比较完善。第三个也是最重要的一个是系统是否正常运行,一个系统如果不能正常去运行,那么做这个系统也就毫无意义,也就是说这个系统是个失败的案例。本系统开发所使用的技术都相对成熟,代码完整,并且保证各个功能都可以正常的运行。最后是前端界面的设计,本系统的界面设计简单,上手方便,所有功能整齐有序,一目了然。
系统功能业务结构如下图4-1所示:
用户和管理员登录输入用户名和密码,再输入验证码进行登录,登录成功后跳转到相对的页面,如图4-2所示。

图4-2 登陆功能流程图
未注册的网站用户进行网站的注册操作功能如图4-3所示。

图4-3 注册功能流程图
登录用户进入个人中心可以查看自己的个人信息,并且进行修改操作,其流程如图4-4所示。

图4-4 修改功能流程图
注册并且登录的用户可以挑选自己喜欢的课程,并且进行相关的学习,房源信息删除如图4-5所示。

图4-5学习流程图
业务流程就是阐述系统的每一步对应的功能操作,而通过业务流程可以让我们更加直观的了解业务操作的具体步骤。在系统的登录界面,用户通过选定相应的角色,然后输入账号和密码进行登录,然后系统在后端进行判定,跳转到相应的界面,完成角色的登录。如果账号和密码输入错误,则会提示重新输入。系统业务流程图如图4-8所示:

图4-8系统业务流程图
通过需求分析,设计出本系统的主要功能用例图。
(1)管理员用例需求,主要用于管理员的权限和功能。如图4-9所示

图4-9管理员需求用例图

图4-10用户用例图
1、系统角色E-R图如图4-11所示。

图4-11 系统 E-R图
根据需求结构,本系统共有以下的6张数据库表:
课程表:本表用于保存课程的基本信息,主要字段包括:课程id、课程标题、课程简介、课程封面图、开始日期、课程类型、结束日期等信息组成。表结构如下表所示。
表4.1 课程表
| 列名 | 数据类型 | 长度 | 是否主键 | 说明 |
| Id | varchar | 255 | 是 | 主键id |
| bt | varchar | 255 | 否 | 名称 |
| ssj | varchar | 255 | 否 | 开始日期 |
| esj | varchar | 255 | 否 | 结束日期 |
| kcjs | varchar | 255 | 否 | 课程介绍 |
| kcap | varchar | 255 | 否 | 课程安排 |
| jsjs | varchar | 255 | 否 | 老师介绍 |
| lx | varchar | 255 | 否 | 类型 |
| jq | varchar | 255 | 否 | 价钱 |
| fmt | varchar | 255 | 否 | 封面图 |
用户表:本表用于保存用户的基本信息,主要字段包括:姓名、账号密码、电话、角色等信息组成。表结构如下表所示。
表4.2 用户表
| 列名 | 数据类型 | 长度 | 是否主键 | 说明 |
| Userid | varchar | 255 | 是 | 主键id |
| Name | varchar | 255 | 否 | 姓名 |
| Account | varchar | 255 | 否 | 账号 |
| Password | varchar | 255 | 否 | 密码 |
| Phone | varchar | 255 | 否 | 电话 |
| Roles | varchar | 255 | 否 | 角色 |
点赞表:本表用于保存课程类型基本信息,主要字段包括:主键id、名称等信息组成。表结构如下表所示。
表4.3 课程类型表
| 列名 | 数据类型 | 长度 | 是否主键 | 说明 |
| Id | varchar | 255 | 是 | 主键id |
| mc | varchar | 255 | 否 | 名称 |
课时表:本表用于保存课时的基本信息,主要字段包括:主键id、名称、简介、讲课日期、教师名称、教师头像、课程视频等信息组成。表结构如下表所示。
表4.4 课时表
| 列名 | 数据类型 | 长度 | 是否主键 | 说明 |
| Id | varchar | 255 | 是 | 主键id |
| Bt | varchar | 255 | 否 | 名称 |
| jj | varchar | 255 | 否 | 简介 |
| rq | varchar | 255 | 否 | 讲课日期 |
| js | varchar | 255 | 否 | 教师名称 |
| tx | varchar | 255 | 否 | 教师头像 |
| sp | varchar | 255 | 否 | 课程视频 |
评价表:本表用于保存用户评价课程的基本信息,主要字段包括:主键id、姓名、用户id、课程标题、评价内容、评价时间等信息组成。表结构如下表所示。
表4.5 评价表
| 列名 | 数据类型 | 长度 | 是否主键 | 说明 |
| Id | varchar | 255 | 是 | 主键id |
| Xm | varchar | 255 | 否 | 姓名 |
| Yhid | varchar | 255 | 否 | 用户id |
| kcmc | varchar | 255 | 否 | 课程标题 |
| nr | varchar | 255 | 否 | 评价内容 |
| sj | varchar | 255 | 否 | 评价时间 |
订购表:本表用于保存用户评价课程的基本信息,主要字段包括:主键id、用户姓名、课程id、课程名称、订购时间、订购价钱等信息组成。表结构如下表所示。
表4.6 订购表
| 列名 | 数据类型 | 长度 | 是否主键 | 说明 |
| Id | varchar | 255 | 是 | 主键id |
| yhid | varchar | 255 | 否 | 用户id |
| xm | varchar | 255 | 否 | 用户姓名 |
| kcid | varchar | 255 | 否 | 课程id |
| kcmc | varchar | 255 | 否 | 课程名称 |
| sj | varchar | 255 | 否 | 订购时间 |
| jq | varchar | 255 | 否 | 订购价钱 |
基于java+SpringBoot+HTML+MySQL在线学习网站的设计与实现_哔哩哔哩_bilibili
源码+论文获取请私信获取