计算机精品课程学习系统是一个集成了多种高质量计算机科学课程资源的在线学习平台。该系统提供了丰富的学习材料,包括视频讲座、互动式编程练习、课后作业以及项目案例等。学生可以根据自己的水平和兴趣选择适合的课程进行学习,并通过系统提供的评估工具检测学习成果。此外,系统还支持社区交流功能,允许学生之间进行讨论和互助,为学习者提供一个全面、便捷的计算机科学学习环境。
本系统以springboot架构技术为基础,采用Java语言和MySQL数据库进行开发设计,通过对计算机精品课程学习管理流程的分析,分析了其功能性和非功能性需求,设计了基于Android的计算机精品课程学习系统,该APP包括管理员、教师和学生三部分。同时还能为学生提供一个方便实用的计算机精品课程学习系统,使得学生能够及时地找到合适自己的计算机精品课程学习信息。管理员在使用本系统时,可以通过后台管理员界面管理学生的信息,也可以发布系统公告,让学生及时了解计算机精品课程学习信息。
关键词:计算机精品课程学习;Android;springboot;MySQL数据库
Abstract
This system is based on the Spring Boot architecture technology, developed and designed using Java language and MySQL database. Through the analysis of the learning and management process of computer quality courses, its functional and non functional requirements were analyzed, and an Android based computer quality course learning system was designed. The APP includes three parts: administrator, teacher, and student. At the same time, it can also provide students with a convenient and practical computer quality course learning system, enabling them to timely find suitable information for their computer quality course learning. When using this system, administrators can manage student information through the backend administrator interface and publish system announcements to enable students to timely understand the learning information of high-quality computer courses.
Keywords:Learning high-quality computer courses; Android; Springboot; MySQL database
第1章概 述
1.1 开发背景及研究意义
1.2 国内外研究现状和发展趋势
1.3 本文主要研究的内容
第2章关键技术介绍
2.1 开发环境
2.2 Java技术
2.3 Android Studio介绍
2.4 MySQL数据库
2.5 Spring Boot框架
2.6 B/S架构
2.7 推荐算法介绍
2.8 本章小结
第3章系统分析
3.1 系统概述
3.2 需求分析
3.3 可行性分析
3.3.1 技术可行性分析
3.3.2 经济可行性分析
3.4 系统流程分析
3.4.1 登录流程图
3.4.2 添加新用户流程图
3.5 系统用例分析
3.5.1 管理员用例图
3.5.2 教师用例图
3.5.3 学生用例图
3.6 本章小结
第4章系统设计
4.1 系统基本结构设计
4.2 数据库设计
4.2.1 E-R图设计
4.2.2 数据库表设计
4.3 本章小结
第5章系统实现
5.1 APP前台功能的实现
5.1.1 登录注册界面的实现
5.1.2 APP首页功能的实现
5.1.3 学生功能
5.2 后台功能模块实现
5.2.1 管理员功能实现
5.2.2 教师功能实现
5.3 本章小结
第6章系统测试
6.1 系统测试目的
6.2 系统功能测试
6.2.1 登录注册功能测试
6.2.2. 学生管理功能测试
6.3 本章小结
结 论
参考文献
致 谢
第1章 概 述
通过对本文的开发背景、研究意义以及国内外研究现状和发展趋势的分析,确定本文的研究内容是系统开发的前提。
随着信息技术的飞速发展,计算机科学已成为现代教育体系中不可或缺的重要学科。在全球化和数字化时代背景下,对计算机专业人才的需求日益增长,而高质量教育资源的获取却存在一定限制,特别是对于那些资源较为匮乏的地区和群体。此外,传统的教育模式在课程更新、教学互动以及个性化学习等方面面临挑战。因此,开发一个涵盖各类计算机精品课程的学习系统,不仅能够满足广泛而多样的学习需求,还能为教育公平和教学效率的提升做出贡献。
构建计算机精品课程学习系统的意义在于多方面。它能够突破时间和空间的限制,使全球学习者都能接触到优质的计算机科学教育资源。通过在线平台实现的课程使得学习变得更加灵活和便捷,有助于学习者根据个人情况制定学习计划,从而实现自主学习和终身学习的目标。系统中包含的互动式学习和即时反馈机制有助于提高学习者的参与度和积极性,增强学习效果。通过数据分析和智能推荐技术,系统可以为每个用户提供个性化的学习路径和支持,最大限度地促进其学习成果。该学习系统的建立和应用对于提升整体计算机科学教育水平具有重大价值,同时也促进了知识共享和全球教育资源的均衡分配。
在中国,随着互联网技术和在线教育的快速发展,计算机精品课程学习系统得到了广泛的关注和迅速的推广。国内许多高校和教育机构纷纷开发了自己的在线教学平台,如“学堂在线”和“中国大学MOOC”,提供了大量的计算机科学相关课程资源。这些平台利用视频讲座、在线测试、互动讨论等多种教学方式,实现了异地教育和终身学习。同时,国内研究者也在探索如何通过人工智能和大数据技术来提升在线学习系统的个性化推荐能力和学习效果评估精准度。然而,国内计算机精品课程学习系统在课程内容更新速度、教学互动设计、学习体验优化以及跨平台兼容性等方面,仍存在一定的挑战。
在国外,尤其是在一些发达国家,计算机精品课程学习系统已经成为教育技术领域的研究热点。许多国际知名教育机构如Coursera、edX、Udacity等提供了海量的计算机科学相关在线课程,且这些课程往往由世界顶尖大学的教授授课,具有较高的学术水平和国际认可度。国外的研究不仅注重课程内容的质量和多样性,而且在学习者交互体验、课程适应性以及数据驱动的教学决策支持系统等方面进行了深入探索。此外,国外还有许多针对特定领域的计算机学习平台,如Codecademy和LeetCode,它们专注于编程技能的实战训练。尽管如此,国外计算机精品课程学习系统在面向全球用户时的本地化适配和服务个性化方面还有待加强。
该系统采用java技术,并引入了基于用户相似度的协同过滤算法,用于提供个性化的推荐功能。结合springboot框架使页面更加完善,后台使用MySQL数据库进行数据存储。系统主要分为三大模块:即管理员模块、教师模块和学生模块。本文从计算机精品课程学习流程分析入手,分析了其功能性需求和非功能性需求,设计了一个由管理员、教师和学生三部分组成的计算机精品课程学习系统。学生可在APP端浏览首页、视频课程、在线资源、交流论坛、我的;注册登录后在我的页面可以对我的发帖、聊天记录、修改密码进行详细操作;教师进入后台可以对系统首页、个人中心、视频课程管理、在线资源管理等功能进行管理;管理员可通过后台管理界面管理学生信息和系统管理。
第2章关键技术介绍
在开发系统过程中采用Android Stuido,Java语言和MySQL数据库存储数据。系统以B/S为基础,实现管理一体化、规范化,为用户提供一个高效快捷的交流平台。利用springboot架构进行编程,具有良好的稳定性与安全性,并且操作简单,易于维护。下面介绍一下关键技术。
本系统使用MyEclipse开发工具。系统使用服务器为Tomcat服务器。系统数据库设计使用MySQL。
java是一种面向对象的面向对象编程语言,它不仅吸收了C++语言的优点,而且摒弃了C++不可理解的多继承和指针的概念,所以Java语言功能强大,使用方便。JavaScript作为一种动态网页制作技术,jQuery提供了丰富而强大的脚本语言库支持。二者结合使用可以有效提高开发效率和质量。Java语言是静态面向对象编程语言的代表,是面向对象理论的优秀实现,使程序员能够优雅地思考复杂的编程。
Java是简单性的、面向对象、分布式、健壮性、安全性、平台独立、可移植性的、多线程、动态性的。它的应用使软件开发过程更加灵活,提高了软件质量,增强了软件可重用性。在当今网络技术迅速发展的情况下,Java已成为目前最流行的编程语言之一。Java是一种开源语言。Java可以编写桌面应用程序、Web应用程序、分布式系统、嵌入式系统应用程序等。
2.3 Android Studio介绍
Android Studio 是一套由谷歌开发的集成开发环境(IDE),专为 Android 应用开发而设计。它基于 IntelliJ IDEA,提供了丰富的工具和功能,以支持软件开发的整个生命周期。Android Studio 包含了代码编辑器、调试工具、性能优化仪器以及版本控制系统,能够帮助开发者高效地编写高质量、高性能的 Android 应用程序。该 IDE 还提供了大量用于设计界面的预制组件,如布局编辑器和 UI 设计师,这些工具可以帮助开发者快速实现原型设计。此外,Android Studio 还拥有强大的构建系统,支持自动完成编译过程,并提供即时反馈与错误检查。通过与 Android SDK 紧密集成,Android Studio 能够确保开发者能够使用最新的 API、库和 NDK 功能。谷歌不断更新 Android Studio,增加新特性和优化现有功能,以提高开发效率并减少常见的编程错误,致力于为 Android 开发者社区提供最先进的开发体验。
现在的Web动态网站都是基于数据库的,一直以来,MySQL数据与java技术的组合都备受开发者们的亲赖,MySQL目前属于Oracle甲骨文公司,MySQL称之为关系型数据库。
(1)MySQL是相比与oracle更轻量、更简介便于使用,在服务部署方面相对复杂度低,更利于毕设系统的开发。
(2)MySQL对多数个人用户来说是免费的。
(3)MySQL支持sql语言,学习成本较低。
(4)MySQL可支持互联网数据共享也支持数据安全设置,防止数据泄露。
(5)MySQL运行到各种版本的操作系统中无论是服务器上还是开发用的笔记本上。
Spring Boot是由Pivotal团队提供的轻量级框架,其“开箱即用”及“约定优于配置”的策略可以使开发者全身心的投入到业务逻辑代码的编写中,极大地提高了软件开发项目的效率。相比于Spring框架而言,Spring Boot框架更加能够节省程序员配置XML的时间,Spring Boot项目允许开发者使用它的所有模块和开发功能,此外,Spring Boot内置了服务器,简化了开发者启用服务器的整体流程,Spring Boot还可以自动适配不同类型的数据库以满足用户快速连接后台数据库管理的需求,这极大地方便了用户快速搭建应用程序的实现过程。2014年4月,Spring Boot 1.0.0发布,截止到2022年2月,发布的Spring Boot版本为Spring Boot 3.0.0-M1。在系统的设计与开发中,为了能够快速搭建软件后台服务的开发环境,从技术实现的难度以及平台开发的成本两个方面考虑,Spring Boot框架能够使开发者更关注平台功能的业务逻辑代码实现,可采用Spring Boot框架搭建系统为前端电子商城APP提供数据服务。因此,本案例项目后台开发选择Spring Boot框架。
B/S结构就是指系统客户端与服务器分离,客户端通过浏览器访问服务端进行操作。
B/S结构目前广泛应用于绝大部分系统搭建中,这种结构摒弃C/S结构客户端服务端不分离的缺点,具有更多的优势:
(1)跨平台性:B/S的标准由标准化组织确立,适用于绝大多数的系统搭建,通用于应用之间。
(2)低维护成本:客户端和服务器端分离,减轻了两端的压力,尤其是客户端,对客户端设备,硬件、软件要求都比较低,并且系统需要升级或维护时,只需要在服务器端升级或维护就可以,使相应的费用减少。
2.7 推荐算法介绍
推荐算法是一类算法,它根据用户的历史行为、偏好和需求,利用数据分析技术为用户推荐他们可能感兴趣的商品或服务。常见的推荐算法包括基于内容的推荐、协同过滤推荐以及混合推荐等。基于内容的推荐通过分析用户过去喜欢的物品特征来推荐类似的物品;协同过滤推荐则分为用户基和物品基两种,前者通过找到相似用户来推荐物品,后者则是通过找到相似物品来进行推荐;混合推荐结合了多种方法,以提高推荐的准确度和覆盖度。随着人工智能技术的发展,深度学习也被应用于推荐系统中,使得推荐更加精准和个性化。
本节作为开发的准备,简要介绍了系统开发所需的开发环境,然后介绍系统开发所需的技术,从而掌握系统开发的总体框架性。
第3章 系统分析
系统分析是软件开发的关键。但在实际工作中却往往容易被人们忽视或误解。其实需求分析在软件开发过程中起着重要作用,它不仅为软件产品提供了一个基本框架和基础结构,而且还能够提高软件开发效率及质量。大多数软件的故障都是由于需求分析错误造成的,因为需求分析可以分析用户的业务,并根据用户的需求进行定制分析。
该系统由个人管理员、教师和学生三部分组成。其中:学生注册登录后,在我的页面可以对我的发帖、聊天记录、修改密码等进行详细操作;教师进入系统后台可以对系统首页、个人中心、视频课程管理、在线资源管理等功能进行详细操作;管理员则是根据不同需求设置了不同功能,可以通过后台管理接口管理学生信息。
需求分析,也称为软件需求分析、系统需求分析或需求分析工程,是指开发人员经过充分的研究和分析,准确地理解用户和项目在功能、性能、可靠性等方面的具体需求,并将用户的非正式需求表述转化为确定系统必须执行的需求的完整定义的过程。
功能需求分析是系统设计的前提,它要求开发者和用户定义开发什么样的体系和系统需要什么样的功能。本文主要介绍了一种基于Android实现的计算机精品课程学习系统。该系统为用户找到计算机精品课程学习提供了更安全、更高效、更便捷的途径。本系统有三个角色:管理员、教师和学生,要求具备以下功能:
- 学生可以浏览主页了解视频课程、在线资源、交流论坛等,并对视频课程进行评论或收藏等操作;
- 教师通过后台教师界面,实现对系统首页、个人中心、视频课程管理、在线资源管理等功能的管理;
(3)管理员通过后台管理员界面,实现对学生信息管理,或发布系统公告,让学生实时知道最新的计算机精品课程学习。
可行性分析是指通过比较项目的主要内容和支撑条件,如市场需求、资源供应、环境影响、资金筹措情况、盈利能力等,预测项目建成后可能产生的资金、经济效益、社会和环境影响,为项目决策提供依据的综合性系统分析方法。可行性研究报告编制的质量直接影响着投资决策的成,而可行性研究报告编制程序又决定了可行性研究报告能否得到有效执行。因此,必须重视可行性研究工作,提高其编制水平。可行性分析应当具有预见性、公正性、可靠性和科学性。
本系统是为了为用户寻找计算机精品课程学习提供更加安全、高效、便捷的方式,本系统需要运用到Java、MySQL、springboot、B/S结构等技术,这些技术在国内外已经非常成熟,在大学期间也有所涉及,相关的知识和工具在网络上也可以查到,再加上老师的指导,在技术上的难题可以得到解决。
本研究是基于Android的计算机精品课程学习系统的设计与实现。开发所需的软件资源是Eclipse。我们可以在它的网站上安装一个免费的版本,这对我们的开发和使用是足够好的。数据库就是MySQL数据库。是开源是免费的,服务器使用Tomcat服务器,浏览器使用日常IE浏览器,springboot框架是开源的。经过可行性评估,软件资源支出符合经济可行性。硬件方面,配备齐全的笔记本电脑作为工具在经济上是可行的。
登录流程是该系统的第一个流程,登录的第一步是输入账号、密码登录,系统会验证账号与密码是否正确,正确时系统会判断账号类型再进入不同的后台;不正确时,会返回到登录的第一步,输入用户重新执行登录流程。该流程如图3-1所示。
图3-1登录流程图
添加新用户的流程是先查询新用户名是否已存在,如已有该用户名,需重拟用户名并同时输入新用户的其它信息,添加新用户到数据库时会先验证数据是否完整,信息都正确且完整时,返回并刷新用户列表;信息不正确时,会返回输入信息的那一步。该流程如图3-2所示。
图3-2添加新用户流程图
3.5 系统用例分析
3.5.1 管理员用例图
计算机精品课程学习系统的最大权限用户是管理员,通过管理员菜单中的系统首页、个人中心、学生管理、教师管理、课程分类管理、视频课程管理、在线资源管理、交流论坛、系统管理等选项来对系统后台信息进行管理。管理员用例如图3-3所示。
图3-3管理员用例图
3.5.2 教师用例图
教师通过菜单中的系统首页、个人中心、视频课程管理、在线资源管理等选项来对系统后台信息进行管理。教师用例如图3-4所示。
图3-4教师用例图
3.5.3 学生用例图
学生进入系统可以对我的发帖、聊天记录、修改密码进行管理。学生用例如图3-5所示。
图3-5学生用例图
基于Android的计算机精品课程学习系统从市场、技术、经济、功能等方面分析了系统的功能需求,可以满足学生的计算机精品课程学习管理需求,帮助学生安全、高效地找到合适的计算机精品课程学习信息,因此有必要对其进行课题研究。
第4章 系统设计
系统设计是将被设计对象划分为单个模块进行构建,各个模块相互支持,相互制约,它们的组合是一个完整的系统。通过系统设计,可以最大限度地满足系统的预期目标,明确软件开发的目的。
本次系统采用springboot框架集进行开发,springboot框架是一款企业界主流的软件开发框架,其简化了开发流程,大大缩减了软件开发所需的时间提高了软件的响应速度。系统总体结构图如图4-1所示。
图4-1 系统总体结构图
数据库结构设计的好坏直接影响到计算机精品课程学习系统的效率和实现的效果。本系统的数据库采用MySQL数据库,MySQL是一种开放源代码的关系型数据库管理系统,使用最常见的数据库管理语言SQL进行数据库管理。
在数据库概念模型设计的时候,一般都采用E-R实体图进行展示,在实体图中可以展示出数据库表中的所有字段名称,本计算机精品课程学习系统中的主要的数据库总体E-R模型图如下图所示。
图4-2总体E-R关系图
数据表是用来保存多种数据的表,它是所有数据库的核心对象,且对于软件开发有着不可替代的作用。其相关数据表如下:
表4-1:视频课程评论表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
refid | bigint | 关联表id | |||
userid | bigint | 用户id | |||
avatarurl | longtext | 4294967295 | 头像 | ||
nickname | varchar | 200 | 用户名 | ||
content | longtext | 4294967295 | 评论内容 | ||
reply | longtext | 4294967295 | 回复内容 |
表4-2:系统简介
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
title | varchar | 200 | 标题 | ||
subtitle | varchar | 200 | 副标题 | ||
content | longtext | 4294967295 | 内容 | ||
picture1 | longtext | 4294967295 | 图片1 | ||
picture2 | longtext | 4294967295 | 图片2 | ||
picture3 | longtext | 4294967295 | 图片3 |
表4-3:管理员表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
username | varchar | 100 | 用户名 | ||
password | varchar | 100 | 密码 | ||
image | varchar | 200 | 头像 | ||
role | varchar | 100 | 角色 | 管理员 | |
addtime | timestamp | 新增时间 | CURRENT_TIMESTAMP |
表4-4:配置文件
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
name | varchar | 100 | 配置参数名称 | ||
value | varchar | 100 | 配置参数值 | ||
url | varchar | 500 | url |
表4-5:token表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
userid | bigint | 用户id | |||
username | varchar | 100 | 用户名 | ||
tablename | varchar | 100 | 表名 | ||
role | varchar | 100 | 角色 | ||
token | varchar | 200 | 密码 | ||
addtime | timestamp | 新增时间 | CURRENT_TIMESTAMP | ||
expiratedtime | timestamp | 过期时间 | CURRENT_TIMESTAMP |
表4-6:在线资源评论表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
refid | bigint | 关联表id | |||
userid | bigint | 用户id | |||
avatarurl | longtext | 4294967295 | 头像 | ||
nickname | varchar | 200 | 用户名 | ||
content | longtext | 4294967295 | 评论内容 | ||
reply | longtext | 4294967295 | 回复内容 |
表4-7:学生
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
xueshengzhanghao | varchar | 200 | 学生账号 | ||
mima | varchar | 200 | 密码 | ||
xueshengxingming | varchar | 200 | 学生姓名 | ||
xingbie | varchar | 200 | 性别 | ||
xueshengdianhua | varchar | 200 | 学生电话 | ||
touxiang | longtext | 4294967295 | 头像 |
表4-8:收藏表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
userid | bigint | 用户id | |||
refid | bigint | 商品id | |||
tablename | varchar | 200 | 表名 | ||
name | varchar | 200 | 名称 | ||
picture | longtext | 4294967295 | 图片 | ||
type | varchar | 200 | 类型 | 1 | |
inteltype | varchar | 200 | 推荐类型 | ||
remark | varchar | 200 | 备注 |
表4-9:消息表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
uid | bigint | 用户ID | |||
fid | bigint | 好友用户ID | |||
content | varchar | 200 | 内容 | ||
format | int | 格式(1:文字,2:图片) | |||
isread | int | 消息已读(0:未读,1:已读) | 0 |
表4-10:视频课程
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
kechengmingcheng | varchar | 200 | 课程名称 | ||
kechengfenlei | varchar | 200 | 课程分类 | ||
kechengzhaopian | longtext | 4294967295 | 课程照片 | ||
kechengyaodian | varchar | 200 | 课程要点 | ||
kechengshipin | longtext | 4294967295 | 课程视频 | ||
kechengfujian | longtext | 4294967295 | 课程附件 | ||
kechengxiangqing | longtext | 4294967295 | 课程详情 | ||
jiaoshizhanghao | varchar | 200 | 教师账号 | ||
jiaoshixingming | varchar | 200 | 教师姓名 | ||
clicktime | datetime | 最近点击时间 | |||
clicknum | int | 点击次数 | 0 | ||
discussnum | int | 评论数 | 0 | ||
storeupnum | int | 收藏数 | 0 |
表4-11:关于我们
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
title | varchar | 200 | 标题 | ||
subtitle | varchar | 200 | 副标题 | ||
content | longtext | 4294967295 | 内容 | ||
picture1 | longtext | 4294967295 | 图片1 | ||
picture2 | longtext | 4294967295 | 图片2 | ||
picture3 | longtext | 4294967295 | 图片3 |
表4-12:公告资讯分类
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
typename | varchar | 200 | 分类名称 |
表4-13:公告资讯
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
title | varchar | 200 | 标题 | ||
introduction | longtext | 4294967295 | 简介 | ||
typename | varchar | 200 | 分类名称 | ||
name | varchar | 200 | 发布人 | ||
headportrait | longtext | 4294967295 | 头像 | ||
clicknum | int | 点击次数 | 0 | ||
clicktime | datetime | 最近点击时间 | |||
thumbsupnum | int | 赞 | 0 | ||
crazilynum | int | 踩 | 0 | ||
storeupnum | int | 收藏数 | 0 | ||
picture | longtext | 4294967295 | 图片 | ||
content | longtext | 4294967295 | 内容 |
表4-14:课程分类
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
kechengfenlei | varchar | 200 | 课程分类 |
表4-15:教师
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
jiaoshizhanghao | varchar | 200 | 教师账号 | ||
mima | varchar | 200 | 密码 | ||
jiaoshixingming | varchar | 200 | 教师姓名 | ||
xingbie | varchar | 200 | 性别 | ||
jiaoshidianhua | varchar | 200 | 教师电话 | ||
touxiang | longtext | 4294967295 | 头像 |
表4-16:好友表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
uid | bigint | 用户ID | |||
fid | bigint | 好友用户ID | |||
name | varchar | 200 | 名称 | ||
picture | longtext | 4294967295 | 图片 | ||
role | varchar | 200 | 角色 | ||
tablename | varchar | 200 | 表名 | ||
alias | varchar | 200 | 别名 | ||
type | int | 类型(0:好友申请,1:好友,2:消息) | 0 |
表4-17:交流论坛
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
title | varchar | 200 | 帖子标题 | ||
content | longtext | 4294967295 | 帖子内容 | ||
parentid | bigint | 父节点id | |||
userid | bigint | 用户id | |||
username | varchar | 200 | 用户名 | ||
avatarurl | longtext | 4294967295 | 头像 | ||
isdone | varchar | 200 | 状态 | ||
istop | int | 是否置顶 | 0 | ||
toptime | datetime | 置顶时间 |
表4-18:在线资源
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
ziyuanmingcheng | varchar | 200 | 资源名称 | ||
ziyuanfengmian | longtext | 4294967295 | 资源封面 | ||
fabushijian | date | 发布时间 | |||
ziyuanfujian | longtext | 4294967295 | 资源附件 | ||
ziyuanyaodian | longtext | 4294967295 | 资源要点 | ||
ziyuanxiangqing | longtext | 4294967295 | 资源详情 | ||
jiaoshizhanghao | varchar | 200 | 教师账号 | ||
jiaoshixingming | varchar | 200 | 教师姓名 | ||
discussnum | int | 评论数 | 0 | ||
storeupnum | int | 收藏数 | 0 |
4.3 本章小结
通过本章针对计算机精品课程学习系统功能的总体结构、E-R属性图和数据表的大概介绍,对在开发系统时所要涉及到的数据库进行简单设计,为下一章系统的实现做好铺垫。
第5章 系统实现
5.1 APP前台功能的实现
5.1.1 登录界面的实现
APP登录:在登录流程中,用户首先在uni前端界面输入用户名和密码。这些信息通过HTTP请求发送到Java后端。后端接收请求,通过与MySQL数据库交互验证用户凭证。如果认证成功,后端会返回给前端,允许用户访问系统。这个过程涵盖了从用户输入到系统验证和响应的全过程。登录界面如图5-1所示。
图5-1 登录界面
5.1.2 APP首页功能的实现
APP首页是学生注册登录后进入的第一个界面,学生可通过APP端首页的最下面的那一行导航栏进入到相应的网页进行操作;APP首页界面如图5-2所示。
图5-2 APP首页界面图
视频课程:在视频课程界面输入课程名称进行搜索,可以查看到视频课程详情信息,并根据需要对视频课程详情信息进行评论或收藏操作。视频课程详情如图5-3所示。
图5-3视频课程详情界面图
5.1.3 学生功能
学生登录成功后,点击“我的”进入我的页面,在我的页面可以对我的发帖、聊天记录、修改密码等进行详细操作。学生功能如图5-4所示
图5-4学生功能界面图
5.2 后台功能模块实现
5.2.1 管理员功能实现
在登录流程中,用户首先在uni前端界面输入用户名和密码。这些信息通过HTTP请求发送到Java后端。后端接收请求,通过与MySQL数据库交互验证用户凭证。如果认证成功,后端返回给前端,允许用户访问系统。这个过程涵盖了从用户输入到系统验证和响应的全过程。管理员登录界面图5-5所示。
图5-5 管理员登录界面
管理员进入主页面,主要功能包括对系统首页、个人中心、学生管理、教师管理、课程分类管理、视频课程管理、在线资源管理、交流论坛、系统管理等进行操作。管理员主页面如图5-6所示:
图5-6 管理员主界面
学生功能在视图层(view层)进行交互,比如点击“查询、添加或删除”按钮或填写学生表单。这些学生表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如:查看、修改或删除学生列表,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便学生功能可以看到最新的信息或相应的操作反馈。学生管理界面如图5-7所示:
图5-7学生管理界面图
教师功能在视图层(view层)进行交互,比如点击“查询、添加或删除”按钮或填写教师表单。这些教师表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如:查看、修改或删除教师列表,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便教师功能可以看到最新的信息或相应的操作反馈。教师管理界面如图5-8所示:
图5-8教师管理界面图
管理员点击课程分类管理。在课程分类页面输入课程分类进行添加或删除课程分类列表,并根据需要对课程分类详情信息进行修改或删除操作;如图5-9所示:
图5-9课程分类管理界面
管理员点击视频课程管理。在视频课程页面输入课程名称和课程分类进行查询、添加或删除视频课程列表,并根据需要对视频课程详情信息进行查看、修改、查看评论或删除操作;如图5-10所示:
图5-10视频课程管理界面
管理员点击在线资源管理。在在线资源页面输入课程名称进行查询、添加或删除在线资源列表,并根据需要对在线资源详情信息进行查看、修改、查看评论或删除操作;如图5-11所示:
图5-11在线资源管理界面
5.2.2 教师功能实现
教师进入主页面,主要功能包括对系统首页、个人中心、视频课程管理、在线资源管理等进行操作。教师主页面如图5-12所示:
图5-12 教师主界面
教师点击视频课程管理。在视频课程页面输入课程名称和课程分类进行查询、添加或删除视频课程列表,并根据需要对视频课程详情信息进行查看、修改、查看评论或删除操作;如图5-13所示:
图5-13视频课程管理界面
5.3 本章小结
第五章主要内容是系统实现,首先实现了本系统中最重要的前台功能,其次分别实现了对管理员功能的管理、教师功能的管理和学生功能的管理,完成了系统全部功能设计。
第6章 系统测试
系统测试是检验软件产品是否满足预期需求,确保产品无缺陷的重要手段。系统测试侧重于评估系统是否满足指定的要求,并帮助检查整个系统的功能性需求。通过对系统功能和非功能两个方面的测试用例进行分析与比较可以发现软件存在的问题以及需要改进之处。软件可靠性设计是一项系统性工程,涉及到多个学科领域,因此其难度较大。测试将侧重于功能测试,这是黑盒测试的一部分,黑盒测试的重点是用户提供的要求,而不是系统的实际代码。
系统测试(System Testing)是为了向使用者提供有关被测试产品或服务的质量信息而进行的检查。系统测试还可以提供客观和独立的系统评估,以使运营者能够了解和系统实施所面临的潜在问题。系统测试涉及软件组件或系统组件的执行,以评估一个或多个系统属性。通常这些属性表明被测组件或系统满足系统预期开发需求,在各种预期的时间内,正确响应各种系统输入,在可接受的时间内执行其功能,足够可用,同时可以满足分析设计时要求的程度。在预期的环境中运行,并达到用户期望的总体结果。经过一系列严格功能测试,以发现系统功能方面潜在的问题,保证系统的正常运行。
在系统的功能性测试中,开发人员需要按照操作要求使计算机精品课程学习系统软件的各项功能,并准确记录测试期间的每个功能的运行数据,判定软件系统开发的功能是否符合预期的结果,主要是对MySQL数据库里的数据进行增删改查等。
软件测试的第一步是计算机精品课程学习系统的学生注册登录功能模块进行测试,测试学生在初次进入软件系统时,是否可以使用注册后登录的功能,具体测试的步骤如表6-1所示。
表6-1 登录注册管理功能测试数据表
编号 | 测试的功能 | 步骤 | 预期结果 | 实际结果 |
1 | 学生注册 | 正确填写注册信息,然后点击注册按钮 | 可以完成学生注册 | 注册成功 |
2 | 学生登录 | 正确输入账号、密码,然后点击登录按钮 | 可以完成学生登录 | 学生登录成功 |
6.2.2. 学生管理功能测试
系统的管理层可在此模块进行以下操作:对学生基础信息的修改;对学生的登录密码进行重置;删除学生;新增学生;根据关键词进行检索。以账号:abo 密码:123456为例对该功能进行测试。测试操作如表5-2所示:
表5-2 学生管理测试过程及结果
测试项 | 测试用例 | 测试特性 | 用例描述 | 系统反应 | 测试结果 |
学生管理操作 | 账号:abo 密码:123456 | 功能测试 | 添加一个新学生,基础信息与已有学生完全一致 | 添加失败,提示“该学生已存在” | 通过 |
学生管理操作 | 账号:abo 密码:999999 | 功能测试 | 添加一个新学生,基础信息与已存在学生均有所不同 | 添加成功 | 通过 |
学生管理操作 | 账号:abo 密码:123456 | 功能测试 | 修改系统中账号 | 修改成功 | 通过 |
学生管理操作 | 账号:abo 密码:123456 | 功能测试 | 删除系统中学生 | 删除成功 | 通过 |
学生管理操作 | 账号:abo 密码:123456 | 功能测试 | 按关键词搜索学生信息 | 查找成功 | 通过 |
学生管理操作 | 账号:abo 密码:88888888 | 功能测试 | 重置学生密码 | 密码修改成功 | 通过 |
6.3 本章小结
本章所做的主要工作是对系统进行功能性测试。网站管理系统的正确性是网站的不可或缺的因素,系统的功能性测试是其中必不可少的步骤,也是占有很大比重的部分,这个过程中遇到的最多的问题是当界面跳转的时候系统终止运行。使用Eclipse中的Log Cat功能能够实现对程序每一个步骤进行跟踪,且定位出错误的位置十分方便。通过对各功能模块的测试结果和预期结果的比较,发现系统功能满足项目要求。
结 论
在设计计算机精品课程学习系统的过程中采用springboot架构技术,采用了Java技术来呈现给学生,后台数据采用MySQL数据库来进行存储。
此系统为计算机精品课程学习系统,为了达成预期效果该系统拥有管理员、教师和学生三种角色。学生可以实现对我的发帖、聊天记录、修改密码等功能进行操作。管理员则可以通过后台管理功能对整个系统的信息进行管理,如每个学生发布在的信息,都需要经过管理员审核才能被其他学生所看到,学生所发布的计算机精品课程学习也需要通过审核,除此之外平台的所有公告也是由管理员直接发布,以此来达到维护整个平台信息健康的目的。
基于Android的计算机精品课程学习系统的设计与实现基本上将自己在大学生活中学习的大部分知识都融入了进去,但是还不够,在许多方面还没有考虑全面,相信自己在进入工作中会更加努力,做出更加完美的系统。
参考文献
[1]王慧.“Java程序设计”混合式教学创新模式探究[J].数字通信世界,2023,(06):179-181.
[2]邱小群,邓丽艳,陈海潮.基于B/S的信息管理系统设计和实现[J].信息与电脑(理论版),2022,34(20):146-148.
[3]郑戟明,董云朝,柳青.MySQL数据库数据导入导出方法的探讨[J].电脑知识与技术,2022,18(22):24-25.
[4]焦宇,李民,王欢,余开朝.基于MySQL性能调优的推荐系统优化设计[J].软件导刊,2022,21(09):108-112.
[5]赵将.Java语言在计算机软件开发中的应用[J].数字技术与应用,2023,41(03):160-162.
[6]张志云.探究计算机软件开发中Java编程语言的应用[J].信息记录材料,2023,24(04):110-112.
[7]韩延明.兴趣导向的第三方库案例教学探索与实践——以经管类专业Java程序设计课程为例[J].软件导刊,2023,(06):139-144.
[8]姚昱旻,刘卫国.Android的架构与应用开发研究[J].计算机系统应用,2019(11):110-112+24.
[9]尹孟征.基于Android的APP开发平台综述[J].通信电源技术,2019,33(04):154-155+213.
[10]朱生,牟星亮,单康康.基于Android平台的应用程序开发研究[J].网络安全技术与应用,2020(10):46-47+64.
[11]索红升.基于Java的电子商务平台的设计与开发[J].软件,2022,43(11):138-140.
[12]郑歆.Java程序设计课程的教学实践[J].集成电路应用,2022,39(11):94-95.
[13]妥泽花.基于黑盒测试与白盒测试的比较探究[J].电子世界,2021(11):55-56.
[14]Sohail A, Dominic P. Business process improvement: A process warehouse basedresource management method[C].International Symposium on Technology Managementand Emerging Technologies.IEEE, 2020:291-296.
[15]Ilahi L, Martinho R. Towards a Business Process Management Governance APProachUsing Process Model Templates and Flexibility[C]. IEEE World Congress on Services.IEEE, 2020:27-34.
致 谢
时光荏苒,四年的大学生活使我收获良多,感谢学校给我们提供了一个创新思维、思考问题和解决问题的平台,感谢老师们在过去给予我的知识和帮助。在这里我要向你们表达最真挚的谢意——感谢大家对我门课程教学的支持与鼓励!我想说的话:努力掌握专业知识、不断提高自己的综合素质。通过四年的学习和实验,老师不仅教会了我们知识,还培养了我们自主学习的能力,让我们可以用课堂上所学到的知识去钻研专业的其它方面。
从计算机精品课程学习开发系统的选择,到系统的详细设计,再到系统各个功能模块的编码,再到论文的撰写,作为一名没有实际开发经验学员,我的第一感觉就是不知从何说起,非常感谢老师们在系统架构设计、进度安排、关键技术等方面的宝贵经验和投入,让我备受鼓舞,顺利完成了课题。我相信在今后的工作中将会得到更多的收获!互联网时代已经到来了。随着信息技术的不断发展,网络技术也越来越成熟,它改变着人们的生活方式,同时对传统行业产生巨大影响。互联网时代我们提供了丰富的资源,解决了我在发展过程中遇到的许多问题,在前辈的指导下,我一直有一种开放的感觉。
一般来说,不付出艰苦的努力就不会有预期的结果,一个从最初的想法到实践到具体目标的软件系统需要反复的设计、改进、实验、耐心、细心和信心,以及坚持不懈、不断尝试和探索未知事物的精神与勇气。
免费领取项目源码,请点赞❤️关注收藏并私信博主,谢谢!
免费领取项目源码,请点赞❤️关注收藏并私信博主,谢谢!
免费领取项目源码,请点赞❤️关注收藏并私信博主,谢谢!