个性化微课教学视频推荐系统-计算机毕业设计源码77648

个性化微课教学视频推荐系统

摘  要

随着信息技术的迅猛发展,教育领域正经历着前所未有的变革。微课作为一种新兴的教学资源形式,以其短小精悍、针对性强、易于传播等特点,逐渐受到广大师生的青睐。然而,在微课资源日益丰富的今天,如何高效地为用户提供个性化的微课教学视频推荐,成为了教育领域亟待解决的问题。

个性化微课教学视频推荐系统旨在通过分析用户的学习行为和偏好,为其推荐最符合其需求的微课资源。这不仅有助于提升用户的学习效率和兴趣,还能促进优质教育资源的有效传播和利用。

SSM作为一种成熟、稳定的技术框架组合,具有高度的可扩展性、灵活性和可维护性,为构建个性化微课教学视频推荐系统提供了有力的技术支持。通过整合SSM框架的优势,我们可以实现用户行为的精准跟踪、数据的高效处理以及推荐算法的快速迭代,从而为用户提供更加智能、个性化的微课推荐服务。

因此,本文旨在探讨基于SSM框架的个性化微课教学视频推荐系统的设计与实现。通过深入分析用户需求、系统架构、推荐算法等关键问题,力求构建一个既符合教育领域实际需求,又具备高度可扩展性和灵活性的个性化微课推荐系统,为教育领域的信息化和智能化发展贡献一份力量。

关键词个性化微课教学视频推荐系统;WEB;SSM框架

Personalized Micro Course Teaching Video Recommendation System

ABSTRACT

With the rapid development of information technology, the field of education is undergoing unprecedented changes. Micro courses, as an emerging form of teaching resources, are gradually favored by teachers and students due to their short and concise, targeted, and easy to spread characteristics. However, in today's increasingly abundant micro course resources, how to efficiently provide personalized micro course teaching video recommendations for users has become an urgent problem to be solved in the education field.

The personalized micro course teaching video recommendation system aims to recommend micro course resources that best meet the needs of users by analyzing their learning behavior and preferences. This not only helps to improve the learning efficiency and interest of users, but also promotes the effective dissemination and utilization of high-quality educational resources.

SSM, as a mature and stable combination of technical frameworks, has high scalability, flexibility, and maintainability, providing strong technical support for building personalized micro course teaching video recommendation systems. By integrating the advantages of the SSM framework, we can achieve precise tracking of user behavior, efficient data processing, and fast iteration of recommendation algorithms, thereby providing users with more intelligent and personalized micro course recommendation services.

Therefore, this article aims to explore the design and implementation of a personalized micro course teaching video recommendation system based on the SSM framework. Through in-depth analysis of key issues such as user needs, system architecture, and recommendation algorithms, we strive to build a personalized micro course recommendation system that not only meets the actual needs of the education field, but also has high scalability and flexibility, contributing to the informatization and intelligent development of the education field.

Keywords: Personalized micro course teaching video recommendation system; WEB; SSM Framework

目   录

第1章 绪论

1.1. 课题背景和意义

1.2  国内外研究现状

1.3论文结构与章节安排

第2章 需求分析与可行性分析

2.1 可行性分析

2.1.1技术可行性

2.1.2经济可行性

2.1.3操作可行性

2.2 功能需求分析

2.2.1 功能性分析

2.2.2 非功能性分析

2.3 系统用例分析

2.4 系统的流程分析

2.4.1登录流程

2.4.2添加信息流程

2.4.3删除信息流程

第3章 系统总体设计

3.1 系统架构设计

3.2开发流程设计

3.3系统功能模块设计

3.4数据库设计

3.4.1 数据库概念结构设计

3.4.2数据表

第4章 系统关键模块设计与实现

4.1 学生用户模块

4.1.1 前台首页界面

4.1.2 用户注册界面

4.1.3 学生用户登录界面

4.1.4密码修改界面

4.1.5 我的账户界面

4.1.6 公告消息界面

4.1.7课程信息界面

4.2 教师用户模块

4.2.1 班级信息界面

4.2.2班级学生界面

4.3管理员功能模块

4.3.1管理员功能界面

4.3.2 公共管理界面

4.3.3用户管理界面

4.3.4 资源管理界面

4.3.5 课程分类界面

第5章 系统测试

5.1系统测试的目的

5.2系统测试方法

5.3功能测试

第6章 总结

参考文献

致  谢

  1.   绪论

1.1. 课题背景和意义

在数字化和智能化的时代背景下,教育领域正经历着深刻的变革。微课作为一种新兴的教育资源形式,以其独特的优势逐渐在教育领域中占据重要地位。微课通常聚焦于某一特定的知识点或技能点,内容精炼、针对性强,便于学生随时随地进行自主学习。然而,随着微课资源的日益丰富,如何帮助用户高效地从海量资源中找到符合自身学习需求的微课,成为了一个亟待解决的问题。

个性化微课教学视频推荐系统的出现,正是为了解决这一问题。该系统利用先进的推荐算法,通过分析用户的学习行为和偏好,为其推荐最符合其需求的微课资源。这不仅能够帮助学生更加高效地学习,提升学习效率和学习兴趣,还能够促进优质教育资源的有效传播和利用,推动教育资源的均衡分配。

此外,个性化微课教学视频推荐系统还具有广阔的应用前景和巨大的社会价值。在教育领域,该系统可以应用于在线学习平台、远程教育、MOOC(大规模在线开放课程)等多种场景,为广大学生提供个性化的学习体验。在社会层面,该系统有助于提升国民教育水平,促进教育公平,推动教育事业的可持续发展。

因此,研究和实现个性化微课教学视频推荐系统不仅具有重要的现实意义,还具有深远的社会影响。通过不断优化和完善该系统,我们可以为广大学生提供更加智能、个性化的学习服务,推动教育领域的信息化和智能化发展。

1.2  国内外研究现状

国内研究现状:

在国内,随着教育信息化和智能化的快速发展,个性化微课教学视频推荐系统逐渐成为研究的热点。许多高校和研究机构都在积极探索和研究该领域的理论与技术。例如,国内一些知名的在线教育平台已经开始尝试运用先进的推荐算法,结合用户的学习行为和偏好,为用户提供个性化的微课推荐服务。此外,一些研究团队还尝试将深度学习、自然语言处理等技术应用于微课推荐中,以提高推荐的准确性和用户满意度。

国外研究现状:

在国外,个性化微课教学视频推荐系统也受到了广泛的关注和研究。许多国际知名的教育科技公司和研究机构都在致力于该领域的研究和应用。例如,一些国外在线教育平台通过收集用户的学习数据和行为信息,为用户提供个性化的学习路径和微课推荐。此外,还有一些研究团队尝试将社交网络分析、情感分析等技术引入微课推荐中,以更全面地了解用户的需求和兴趣,从而提供更加精准的推荐服务。

综上所述,个性化微课教学视频推荐系统在国内外都受到了广泛的关注和研究。随着技术的不断进步和应用场景的不断拓展,该领域的研究将会更加深入和广泛,为教育领域的信息化和智能化发展注入新的动力。

1.3论文结构与章节安排

论文将分层次经行编排,除去论文摘要致谢文献参考部分,正文部分还会对系统需求做出分析,以及阐述大体的设计和实现的功能,最后罗列部分调测记录,论文主要架构如下:

第一章:引言。第一章主要介绍了课题的研究背景和意义,选题开发的国内外研究现状和本文的研究内容与主要工作。

第二章:系统需求分析。主要从系统的用户、功能等方面进行需求分析。

第三章:系统设计。主要对系统框架、系统功能模块、数据库进行功能设计。

第四章:系统实现。主要介绍了系统框架搭建、系统界面的实现。

第五章:系统测试。主要对系统的部分界面进行测试并对主要功能进行测试

第六章:总结。

  1.   需求分析与可行性分析

2.1 可行性分析

2.1.1技术可行性

在技术可行性方面,个性化微课教学视频推荐系统采用SSM(Spring、SpringMVC、MyBatis)框架组合,这是一个成熟、稳定且广泛应用的技术栈。Spring框架提供了强大的依赖注入和切面编程支持,有助于简化系统开发和维护;SpringMVC作为Spring的MVC实现,为构建Web应用提供了优雅的模型和视图分离的解决方案;MyBatis作为持久层框架,简化了数据库操作,提高了开发效率。此外,SSM框架组合与各种推荐算法相结合,能够实现用户行为的精准跟踪、数据的高效处理以及个性化推荐的快速响应,确保系统在实际应用中的可行性。因此,从技术角度来看,构建个性化微课教学视频推荐系统是完全可行的。

2.1.2经济可行性

在经济可行性方面,个性化微课教学视频推荐系统的实施与SSM(Spring、SpringMVC、MyBatis)框架的结合,展现出了显著的成本效益。SSM框架作为开源技术,拥有广泛的社区支持和丰富的资源,这意味着企业在引入该系统时,无需支付高昂的许可费用。此外,SSM框架的学习曲线平缓,企业可以迅速构建和部署系统,减少了培训和人力资源成本。从长远来看,个性化微课教学视频推荐系统能够提升用户满意度和学习效率,进而增加用户粘性和市场份额,为企业创造更多的经济价值。因此,从经济角度来看,个性化微课教学视频推荐系统的实施是切实可行的。

2.1.3操作可行性 

在操作可行性方面,个性化微课教学视频推荐系统基于SSM(Spring、SpringMVC、MyBatis)框架设计,为用户提供了直观、友好的操作界面。系统界面设计遵循用户习惯,操作逻辑清晰,使得用户无需复杂的培训即可快速上手。同时,SSM框架的模块化设计使得系统维护变得简单高效,当出现问题时,可以快速定位并解决。此外,系统还提供了详尽的操作指南和帮助文档,为用户在使用过程中提供了有效的支持。因此,从操作角度来看,个性化微课教学视频推荐系统完全满足用户的实际需求,具备高度的操作可行性。

2.2 功能需求分析

2.2.1 功能性分析

按照个性化微课教学视频推荐系统的角色,划分为了学生用户模块、教师用户模块和管理员模块这三大部分。

(一)学生用户功能需求分析:

注册登录:提供注册和登录功能,允许学生创建个人账户并安全登录系统。

首页:展示个性化推荐的微课教学视频和热门内容,让学生快速找到感兴趣的视频资源。

公告消息:提供学校或平台发布的重要公告和消息,确保学生能及时了解到与学习相关的信息。

新闻资讯:提供与教育、学习相关的新闻和资讯内容,帮助学生了解行业动态和学习资源。

班级信息:允许学生查看所有班级的信息,根据需要加入班级等。

课程信息:学生可以查看所有的课程的信息,包括课程名称、课程分类、课程资源、教师姓名等。在详情页面可以打分、点赞、评论、对课程下载。

我的账户:允许学生管理个人账户信息,包括修改密码、头像等。

班级学生:允许学生查看班级成员的信息和,促进班级内部的交流和互动。

课程打分:允许学生对所学课程进行评分和评价,反馈课程质量和教学效果。

收藏:允许学生收藏感兴趣的教学视频或课程资料,方便后续查看和学习。

(二)教师用户功能需求分析

登录:提供教师用户登录功能,确保只有授权的教师可以访问系统后台,保障系统安全。

主页:展示教师个人信息和相关操作入口,方便教师快速进行操作和管理。

班级信息:教师可以查看班级的信息,包括班级名称、班级备注、创办时间等。可以添加新的班级信息。

班级学生:允许教师查看班级学生的信息,方便与学生进行沟通和管理。

课程信息:提供教师所教课程的信息,包括课程名称、上课时间、教学内容等。

课程打分:可以查看学生对教师课程打分详情。

(三)管理员功能需求分析

登录:提供管理员用户登录功能,确保只有授权的管理员可以访问系统后台,保障系统安全。

主页:展示管理员的个人信息和相关操作入口,方便管理员快速进行管理和监控。

轮播图管理:允许管理员管理网站首页的轮播图信息,包括添加新轮播图、编辑轮播图信息、删除轮播图等操作,提升网站的视觉效果和用户体验。

公告消息管理:允许管理员发布、编辑、删除通知公告信息,确保用户能及时了解平台的重要信息和更新。

用户管理:允许管理员管理系统的用户,包括添加新用户、编辑用户信息、重置密码等操作,以确保系统的权限管理和安全性。

新闻资讯管理:提供管理员管理新闻资讯的功能,包括添加新闻、编辑新闻内容、删除新闻等操作,以提供用户更多的教育资讯。

资讯分类管理:允许管理员管理新闻资讯的分类,包括添加新分类、编辑分类信息、删除分类等操作,以便用户按照分类浏览和查找资讯内容。

班级信息:允许管理员管理班级信息,包括添加新班级、编辑班级信息、删除班级等操作,确保学生和教师信息的准确性和完整性。

班级学生:允许管理员查看班级学生的信息,方便管理和沟通。

课程分类:允许管理员管理课程的分类信息,方便学生按照分类浏览和选择课程。

课程信息:允许管理员管理课程信息,包括添加新课程、编辑课程信息、删除课程等操作,确保课程的及时更新和完整性。

课程打分:可以查看学生对课程打分详情。

2.2.2 非功能性分析

个性化微课教学视频推荐系统的非功能性需求比如系统的安全性怎么样,可靠性怎么样,性能怎么样,可拓展性怎么样等。具体可以表示在如下2-1表格中:

2-1个性化微课教学视频推荐系统非功能需求表

安全性

主要指个性化微课教学视频推荐系统数据库的安装,数据库的使用和密码的设定必须合乎规范。

可靠性

可靠性是指个性化微课教学视频推荐系统能够安装用户的指示进行操作,经过测试,可靠性90%以上。

性能

性能是影响个性化微课教学视频推荐系统占据市场的必要条件,所以性能最好要佳才好。

可扩展性

比如数据库预留多个属性,比如接口的使用等确保了系统的非功能性需求。

易用性

用户只要跟着个性化微课教学视频推荐系统的页面展示内容进行操作,就可以了。

可维护性

个性化微课教学视频推荐系统开发的可维护性是非常重要的,经过测试,可维护性没有问题

2.3 系统用例分析

通过2.2功能的分析,得出了系统的用例图:

学生用户用例图如下所示。

图2-1 学生用户用例图

教师用户用例图如下所示。

图2-2 教师用户用例图

管理员用例图如下所示。

图2-3 管理员用例图

2.4 系统的流程分析

2.4.1登录流程

系统登录流程图,如图所示:

图2-4登录流程图

2.4.2添加信息流程

添加信息流程图,如图所示:

图2-5添加信息流程图

2.4.3删除信息流程

删除信息流程图,如图所示:

图2-6删除信息流程图

  1.   系统总体设计

3.1 系统架构设计

个性化微课教学视频推荐系统从架构上分为三层:表现层(UI)、业务逻辑层(BLL)以及数据层(DL)。

图3-1 个性化微课教学视频推荐系统架构设计图

表现层(UI):又称UI层,主要完成个性化微课教学视频推荐系统的UI交互功能,一个良好的UI可以打打提高用户的用户体验,增强用户使用个性化微课教学视频推荐系统时的舒适度。UI的界面设计也要适应不同版本的个性化微课教学视频推荐系统以及不同尺寸的分辨率,以做到良好的兼容性。UI交互功能要求合理,用户进行交互操作时必须要得到与之相符的交互结果,这就要求表现层要与业务逻辑层进行良好的对接。

业务逻辑层(BLL):主要完成个性化微课教学视频推荐系统的数据处理功能。用户从表现层传输过来的数据经过业务逻辑层进行处理交付给数据层,系统从数据层读取的数据经过业务逻辑层进行处理交付给表现层。

数据层(DL):由于个性化微课教学视频推荐系统的数据是放在服务端的mysql数据库中,因此本属于服务层的部分可以直接整合在业务逻辑层中,所以数据层中只有数据库,其主要完成个性化微课教学视频推荐系统的数据存储和管理功能。

3.2开发流程设计

个性化微课教学视频推荐系统的开发对管理模块和系统使用的数据库进行分析,编写代开发,规划和操作是构建信息管理应用程序的必要三步曲,它决定了系统是否能够真正实现预设功能以及是否可以在成功设计后实施。在开发过程中,每个阶段必须严格按照线性顺序进行开发,并且在相应阶段生成的每个工作都可以通过技术进行验证和检查。确保一个阶段完成后是正确的,不会造成下一阶段拖拽现象,使系统完成设计功能后得到保证。

从个性化微课教学视频推荐系统的成功开发经验来看,上述方法效果最为明显,最大程度地降低了系统开发的复杂性。如图3-2所示。

图3-2开发系统流程图

3.3系统功能模块设计

通过对个性化微课教学视频推荐系统的功能需求分析以及用例分析,得出了个性化微课教学视频推荐系统的功能模块图如图3-3所示。

图3-3个性化微课教学视频推荐系统功能模块图

3.4数据库设计

数据库设计一般包括需求分析、概念模型设计、数据库表建立三大过程,其中需求分析前面章节已经阐述,概念模型设计有概念模型和逻辑结构设计两部分。

3.4.1 数据库概念结构设计

下面是整个个性化微课教学视频推荐系统中主要的数据库表总E-R实体关系图。

 图3-4 系统总体ER图

3.4.2数据表

将数据库概念设计的E-R图转换为关系数据库。在关系数据库中,数据关系由数据表组成,但是表的结构表现在表的字段上。

表access_token (登陆访问时长)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

token_id

int

10

0

N

Y

临时访问牌ID

2

token

varchar

64

0

Y

N

临时访问牌

3

info

text

65535

0

Y

N

4

maxage

int

10

0

N

N

2

最大寿命:默认2小时

5

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

6

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

7

user_id

int

10

0

N

N

0

用户编号:

表article (文章:用于内容管理系统的文章)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

article_id

mediumint

8

0

N

Y

文章id:[0,8388607]

2

title

varchar

125

0

N

Y

标题:[0,125]用于文章和html的title标签中

3

type

varchar

64

0

N

N

0

文章分类:[0,1000]用来搜索指定类型的文章

4

hits

int

10

0

N

N

0

点击数:[0,1000000000]访问这篇文章的人次

5

praise_len

int

10

0

N

N

0

点赞数

6

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

7

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

8

source

varchar

255

0

Y

N

来源:[0,255]文章的出处

9

url

varchar

255

0

Y

N

来源地址:[0,255]用于跳转到发布该文章的网站

10

tag

varchar

255

0

Y

N

标签:[0,255]用于标注文章所属相关内容,多个标签用空格隔开

11

content

longtext

2147483647

0

Y

N

正文:文章的主体内容

12

img

varchar

255

0

Y

N

封面图

13

description

text

65535

0

Y

N

文章描述

表article_type (文章分类)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

type_id

smallint

5

0

N

Y

分类ID:[0,10000]

2

display

smallint

5

0

N

N

100

显示顺序:[0,1000]决定分类显示的先后顺序

3

name

varchar

16

0

N

N

分类名称:[2,16]

4

father_id

smallint

5

0

N

N

0

上级分类ID:[0,32767]

5

description

varchar

255

0

Y

N

描述:[0,255]描述该分类的作用

6

icon

text

65535

0

Y

N

分类图标:

7

url

varchar

255

0

Y

N

外链地址:[0,255]如果该分类是跳转到其他网站的情况下,就在该URL上设置

8

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表auth (用户权限管理)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

auth_id

int

10

0

N

Y

授权ID:

2

user_group

varchar

64

0

Y

N

用户组:

3

mod_name

varchar

64

0

Y

N

模块名:

4

table_name

varchar

64

0

Y

N

表名:

5

page_title

varchar

255

0

Y

N

页面标题:

6

path

varchar

255

0

Y

N

路由路径:

7

position

varchar

32

0

Y

N

位置:

8

mode

varchar

32

0

N

N

_blank

跳转方式:

9

add

tinyint

3

0

N

N

1

是否可增加:

10

del

tinyint

3

0

N

N

1

是否可删除:

11

set

tinyint

3

0

N

N

1

是否可修改:

12

get

tinyint

3

0

N

N

1

是否可查看:

13

field_add

text

65535

0

Y

N

添加字段:

14

field_set

text

65535

0

Y

N

修改字段:

15

field_get

text

65535

0

Y

N

查询字段:

16

table_nav_name

varchar

500

0

Y

N

跨表导航名称:

17

table_nav

varchar

500

0

Y

N

跨表导航:

18

option

text

65535

0

Y

N

配置:

19

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

20

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表class_information (班级信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

class_information_id

int

10

0

N

Y

班级信息ID

2

teacher_users

int

10

0

Y

N

0

教师用户

3

teachers_name

varchar

64

0

Y

N

教师姓名

4

class_name

varchar

64

0

Y

N

班级名称

5

establishment_time

date

10

0

Y

N

创办时间

6

class_notes

text

65535

0

Y

N

班级备注

7

class_image

varchar

255

0

Y

N

班级图片

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表class_students (班级学生)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

class_students_id

int

10

0

N

Y

班级学生ID

2

teacher_users

int

10

0

Y

N

0

教师用户

3

teachers_name

varchar

64

0

Y

N

教师姓名

4

class_name

varchar

64

0

Y

N

班级名称

5

student_users

int

10

0

Y

N

0

学生用户

6

student_name

varchar

64

0

Y

N

学生姓名

7

joined_at

date

10

0

Y

N

加入时间

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表collect (收藏)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

collect_id

int

10

0

N

Y

收藏ID:

2

user_id

int

10

0

N

N

0

收藏人ID:

3

source_table

varchar

255

0

Y

N

来源表:

4

source_field

varchar

255

0

Y

N

来源字段:

5

source_id

int

10

0

N

N

0

来源ID:

6

title

varchar

255

0

Y

N

标题:

7

img

varchar

255

0

Y

N

封面:

8

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表comment (评论)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

comment_id

int

10

0

N

Y

评论ID:

2

user_id

int

10

0

N

N

0

评论人ID:

3

reply_to_id

int

10

0

N

N

0

回复评论ID:空为0

4

content

longtext

2147483647

0

Y

N

内容:

5

nickname

varchar

255

0

Y

N

昵称:

6

avatar

varchar

255

0

Y

N

头像地址:[0,255]

7

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

9

source_table

varchar

255

0

Y

N

来源表:

10

source_field

varchar

255

0

Y

N

来源字段:

11

source_id

int

10

0

N

N

0

来源ID:

表course_classification (课程分类)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

course_classification_id

int

10

0

N

Y

课程分类ID

2

course_classification

varchar

64

0

Y

N

课程分类

3

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表course_grading (课程打分)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

course_grading_id

int

10

0

N

Y

课程打分ID

2

teacher_users

int

10

0

Y

N

0

教师用户

3

teachers_name

varchar

64

0

Y

N

教师姓名

4

course_name

varchar

64

0

Y

N

课程名称

5

course_classification

varchar

64

0

Y

N

课程分类

6

student_users

int

10

0

Y

N

0

学生用户

7

student_name

varchar

64

0

Y

N

学生姓名

8

scoring_score

varchar

64

0

Y

N

打分分数

9

scoring_and_evaluation

varchar

64

0

Y

N

打分评价

10

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

11

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表course_information (课程信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

course_information_id

int

10

0

N

Y

课程信息ID

2

teacher_users

int

10

0

Y

N

0

教师用户

3

teachers_name

varchar

64

0

Y

N

教师姓名

4

course_name

varchar

64

0

Y

N

课程名称

5

course_classification

varchar

64

0

Y

N

课程分类

6

course_resources

varchar

255

0

Y

N

课程资源

7

course_video

varchar

255

0

Y

N

课程视频

8

course_cover

varchar

255

0

Y

N

课程封面

9

course_introduction

longtext

2147483647

0

Y

N

课程简介

10

hits

int

10

0

N

N

0

点击数

11

praise_len

int

10

0

N

N

0

点赞数

12

examine_state

varchar

16

0

N

N

未审核

审核状态

13

recommend

int

10

0

N

N

0

智能推荐

14

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

15

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表hits (用户点击)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

hits_id

int

10

0

N

Y

点赞ID:

2

user_id

int

10

0

N

N

0

点赞人:

3

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

5

source_table

varchar

255

0

Y

N

来源表:

6

source_field

varchar

255

0

Y

N

来源字段:

7

source_id

int

10

0

N

N

0

来源ID:

表notice (公告)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

notice_id

mediumint

8

0

N

Y

公告id:

2

title

varchar

125

0

N

N

标题:

3

content

longtext

2147483647

0

Y

N

正文:

4

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

5

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表praise (点赞)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

praise_id

int

10

0

N

Y

点赞ID:

2

user_id

int

10

0

N

N

0

点赞人:

3

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

5

source_table

varchar

255

0

Y

N

来源表:

6

source_field

varchar

255

0

Y

N

来源字段:

7

source_id

int

10

0

N

N

0

来源ID:

8

status

bit

1

0

N

N

1

点赞状态:1为点赞,0已取消

表slides (轮播图)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

slides_id

int

10

0

N

Y

轮播图ID:

2

title

varchar

64

0

Y

N

标题:

3

content

varchar

255

0

Y

N

内容:

4

url

varchar

255

0

Y

N

链接:

5

img

varchar

255

0

Y

N

轮播图:

6

hits

int

10

0

N

N

0

点击量:

7

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表student_users (学生用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

student_users_id

int

10

0

N

Y

学生用户ID

2

student_name

varchar

64

0

Y

N

学生姓名

3

student_gender

varchar

64

0

Y

N

学生性别

4

student_age

varchar

64

0

Y

N

学生年龄

5

examine_state

varchar

16

0

N

N

已通过

审核状态

6

user_id

int

10

0

N

N

0

用户ID

7

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表teacher_users (教师用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

teacher_users_id

int

10

0

N

Y

教师用户ID

2

teachers_name

varchar

64

0

Y

N

教师姓名

3

teacher_gender

varchar

64

0

Y

N

教师性别

4

teacher_age

varchar

64

0

Y

N

教师年龄

5

examine_state

varchar

16

0

N

N

已通过

审核状态

6

user_id

int

10

0

N

N

0

用户ID

7

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表upload (文件上传)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

upload_id

int

10

0

N

Y

上传ID

2

name

varchar

64

0

Y

N

文件名

3

path

varchar

255

0

Y

N

访问路径

4

file

varchar

255

0

Y

N

文件路径

5

display

varchar

255

0

Y

N

显示顺序

6

father_id

int

10

0

Y

N

0

父级ID

7

dir

varchar

255

0

Y

N

文件夹

8

type

varchar

32

0

Y

N

文件类型

表user (用户账户:用于保存用户登录信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

user_id

mediumint

8

0

N

Y

用户ID:[0,8388607]用户获取其他与用户相关的数据

2

state

smallint

5

0

N

N

1

账户状态:[0,10](1可用|2异常|3已冻结|4已注销)

3

user_group

varchar

32

0

Y

N

所在用户组:[0,32767]决定用户身份和权限

4

login_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

上次登录时间:

5

phone

varchar

11

0

Y

N

手机号码:[0,11]用户的手机号码,用于找回密码时或登录时

6

phone_state

smallint

5

0

N

N

0

手机认证:[0,1](0未认证|1审核中|2已认证)

7

username

varchar

16

0

N

N

用户名:[0,16]用户登录时所用的账户名称

8

nickname

varchar

16

0

Y

N

昵称:[0,16]

9

password

varchar

64

0

N

N

密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成

10

email

varchar

64

0

Y

N

邮箱:[0,64]用户的邮箱,用于找回密码时或登录时

11

email_state

smallint

5

0

N

N

0

邮箱认证:[0,1](0未认证|1审核中|2已认证)

12

avatar

varchar

255

0

Y

N

头像地址:[0,255]

13

open_id

varchar

255

0

Y

N

针对获取用户信息字段

14

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

15

vip_level

varchar

255

0

Y

N

会员等级

16

vip_discount

double

11

2

Y

N

0.00

会员折扣

表user_group (用户组:用于用户前端身份和鉴权)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

group_id

mediumint

8

0

N

Y

用户组ID:[0,8388607]

2

display

smallint

5

0

N

N

100

显示顺序:[0,1000]

3

name

varchar

16

0

N

N

名称:[0,16]

4

description

varchar

255

0

Y

N

描述:[0,255]描述该用户组的特点或权限范围

5

source_table

varchar

255

0

Y

N

来源表:

6

source_field

varchar

255

0

Y

N

来源字段:

7

source_id

int

10

0

N

N

0

来源ID:

8

register

smallint

5

0

Y

N

0

注册位置:

9

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

  1.   系统关键模块设计与实现

4.1 学生用户模块

4.1.1 前台首页界面

进入系统首页,系统以上中下的布局进行展示,首先映入眼帘的是系统的导航栏,下面是轮播图展示,再往下是新闻资讯,其主界面展示如下图所示。

图4-1 学生用户首页界面图

4.1.2 用户注册界面

注册模块满足用户两部分,当用户想要进行资料相关信息的查询管理的时候,就必须进行登录,如果没有账号的话,在登录界面,点击“注册”按钮就会跳转到注册的界面,根据提示填写好账号、密码、昵称、邮箱、身份、用户姓名、用户性别、联系电话等注册信息,添加提交,注册的信息在数据库中就添加完成了,然后再输入填写好的账号和密码进行登录,其注册主界面展示如下图所示。

图4-2用户注册界面图

4.1.3 学生用户登录界面

学生用户在登录界面输入账号+密码,点击“登录”按钮,系统在用户数据库表中会对用户的账号进行匹配,账号+密码正确的话,就会登录到系统中各个用户的主管理界面,否则提示对应的信息,返回到登录的界面,其登录主界面展示如下图所示。

图4-3学生用户登录界面图

登录关键代码如下所示。

 /**

     * 登录

     * @param data

     * @param httpServletRequest

     * @return

     */

    @PostMapping("login")

    public Map<String, Object> login(@RequestBody Map<String, String> data, HttpServletRequest httpServletRequest) {

        log.info("[执行登录接口]");

        String username = data.get("username");

        String email = data.get("email");

        String phone = data.get("phone");

        String password = data.get("password");

        List resultList = null;

        QueryWrapper wrapper = new QueryWrapper<User>();

        Map<String, String> map = new HashMap<>();

        if(username != null && "".equals(username) == false){

            map.put("username", username);

            resultList = service.selectBaseList(service.select(map, new HashMap<>()));

        }

        else if(email != null && "".equals(email) == false){

            map.put("email", email);

            resultList = service.selectBaseList(service.select(map, new HashMap<>()));

        }

        else if(phone != null && "".equals(phone) == false){

            map.put("phone", phone);

            resultList = service.selectBaseList(service.select(map, new HashMap<>()));

        }else{

            return error(30000, "账号或密码不能为空");

        }

        if (resultList == null || password == null) {

            return error(30000, "账号或密码不能为空");

        }

        //判断是否有这个用户

        if (resultList.size()<=0){

            return error(30000,"用户不存在");

        }

        User byUsername = (User) resultList.get(0);

        Map<String, String> groupMap = new HashMap<>();

        groupMap.put("name",byUsername.getUserGroup());

        List groupList = userGroupService.selectBaseList(userGroupService.select(groupMap, new HashMap<>()));

        if (groupList.size()<1){

            return error(30000,"用户组不存在");

        }

        UserGroup userGroup = (UserGroup) groupList.get(0);

        //查询用户审核状态

        if (!StringUtils.isEmpty(userGroup.getSourceTable())){

            String res = service.selectExamineState(userGroup.getSourceTable(),byUsername.getUserId());

            if (res==null){

                return error(30000,"用户不存在");

            }

            if (!res.equals("已通过")){

                return error(30000,"该用户审核未通过");

            }

        }

        //查询用户状态

        if (byUsername.getState()!=1){

            return error(30000,"用户非可用状态,不能登录");

        }

        String md5password = service.encryption(password);

        if (byUsername.getPassword().equals(md5password)) {

            // 存储Token到数据库

            AccessToken accessToken = new AccessToken();

            accessToken.setToken(UUID.randomUUID().toString().replaceAll("-", ""));

            accessToken.setUser_id(byUsername.getUserId());

            tokenService.save(accessToken);

            // 返回用户信息

            JSONObject user = JSONObject.parseObject(JSONObject.toJSONString(byUsername));

            user.put("token", accessToken.getToken());

            JSONObject ret = new JSONObject();

            ret.put("obj",user);

            return success(ret);

        } else {

            return error(30000, "账号或密码不正确");

        }

}

    public String select(Map<String,String> query,Map<String,String> config){

        StringBuffer sql = new StringBuffer("select ");

        sql.append(config.get(FindConfig.FIELD) == null || "".equals(config.get(FindConfig.FIELD)) ? "*" : config.get(FindConfig.FIELD)).append(" ");

        sql.append("from ").append("`").append(table).append("`").append(toWhereSql(query, "0".equals(config.get(FindConfig.LIKE))));

        if (config.get(FindConfig.GROUP_BY) != null && !"".equals(config.get(FindConfig.GROUP_BY))){

            sql.append("group by ").append(config.get(FindConfig.GROUP_BY)).append(" ");

        }

        if (config.get(FindConfig.ORDER_BY) != null && !"".equals(config.get(FindConfig.ORDER_BY))){

            sql.append("order by ").append(config.get(FindConfig.ORDER_BY)).append(" ");

        }

        if (config.get(FindConfig.PAGE) != null && !"".equals(config.get(FindConfig.PAGE))){

            int page = config.get(FindConfig.PAGE) != null && !"".equals(config.get(FindConfig.PAGE)) ? Integer.parseInt(config.get(FindConfig.PAGE)) : 1;

            int limit = config.get(FindConfig.SIZE) != null && !"".equals(config.get(FindConfig.SIZE)) ? Integer.parseInt(config.get(FindConfig.SIZE)) : 10;

            sql.append(" limit ").append( (page-1)*limit ).append(" , ").append(limit);

        }

        log.info("[{}] - 查询操作,sql: {}",table,sql);

        return sql.toString();

}

    public List selectBaseList(String select) {

        List<Map<String,Object>> mapList = baseMapper.selectBaseList(select);

        List<E> list = new ArrayList<>();

        for (Map<String,Object> map:mapList) {

            list.add(JSON.parseObject(JSON.toJSONString(map),eClass));

        }

        return list;

}

4.1.4密码修改界面

用户使用该系统注册完成后,用户对登录密码有修改需求时,系统也可以提供用户修改密码权限。系统中所有的操作者能够变更自己的密码信息,执行该功能首先必须要登入系统,然后选择密码变更选项以后在给定的文本框中填写初始密码和新密码来完成修改密码的操作。在填写的时候,假如两次密码填写存在差异,那么此次密码变更操作失败。密码修改界面如下图所示。

图4-4密码修改界面图

4.1.5 我的账户界面

在右上角点击“我的账户”可以对个人头像、个人昵称、密码进行修改。我的账户界面如下图所示。

图4-5我的账户界面图

4.1.6 公告消息界面

用户进行公告的阅览,查看管理者发布的网站公告、关于我们、联系方式、网站介绍等信息。公告消息界面图如下图所示。

图4-6公告消息界面图

4.1.7课程信息界面

学生可以查看所有的课程的信息,包括课程名称、课程分类、课程资源、教师姓名等。在详情页面可以打分、点赞、评论、对课程下载。界面如下图所示。

图4-7课程信息界面图

4.2 教师用户模块

4.2.1 班级信息界面

教师可以查看所教班级的信息,包括班级名称、班级备注、创办时间等。可以添加新的班级信息。班级信息界面如下图所示。

图4-8班级信息界面图

4.2.2班级学生界面

教师查看班级学生的信息,方便与学生进行沟通和管理。班级学生如下图所示。

图4-9班级学生界面图

班级学生关键代码如下:

 @RequestMapping(value = {"/sum_group", "/sum"})

    public Map<String, Object> sum(HttpServletRequest request) {

        Query count = service.sum(service.readQuery(request), service.readConfig(request));

        return success(count.getResultList());

}

4.3管理员功能模块

4.3.1管理员功能界面

在管理员功能页面中可以查看主页、公共管理(轮播图、公告消息)、用户管理、资讯管理(新闻资讯、资讯分类)、班级信息、班级学生、课程分类、课程信息、课程打分、退出等功能,并可进行相应操作。管理员功能界面如下图所示。

图4-10管理员功能界面图

4.3.2 公共管理界面

轮播图管理:允许管理员管理网站首页的轮播图信息,包括添加新轮播图、编辑轮播图信息、删除轮播图等操作,提升网站的视觉效果和用户体验。

公告消息管理:允许管理员发布、编辑、删除通知公告信息,确保用户能及时了解平台的重要信息和更新。界面如下图所示。

图4-11轮播图界面图

图4-12公告消息界面图

4.3.3用户管理界面

在系统用户页面中可以对管理员、学生用户、教师用户三种角色进行管控,还可以对三种角色进行查询、重置、添加和删除。系统用户界面如下图所示。

图4-13用户管理界面图

用户管理关键代码如下所示。

public List selectBaseList(String select) {

        List<Map<String,Object>> mapList = baseMapper.selectBaseList(select);

        List<E> list = new ArrayList<>();

        for (Map<String,Object> map:mapList) {

            list.add(JSON.parseObject(JSON.toJSONString(map),eClass));

        }

        return list;

}

4.3.4 资源管理界面

新闻资讯管理:提供管理员管理新闻资讯的功能,包括添加新闻、编辑新闻内容、删除新闻等操作,以提供用户更多的教育资讯。

资讯分类管理:允许管理员管理新闻资讯的分类,包括添加新分类、编辑分类信息、删除分类等操作,以便用户按照分类浏览和查找资讯内容。界面如下图所示。

图4-14新闻资讯界面图

图4-15资讯分类界面图

4.3.5 课程分类界面

允许管理员管理课程的分类信息,方便学生按照分类浏览和选择课程。界面如下图所示。

图4-16课程分类界面图

  1.  系统测试

5.1系统测试的目的

程序设计不能保证没有错误,这是一个开发过程,在错误或错误的过程中都是难以避免的。虽然这是不可避免的,但我们不能使这些错误始终存在于系统中,错误可能会造成无法估量的后果,如系统崩溃,安全信息泄露,系统无法正常启动等,为了避免这些问题,我们需要测试程序,再测试过程中发现问题,并纠正它们,从而使系统更长时间稳定成熟。本章的作用是发现这些问题,并对其进行修改,虽然耗时费力,但对于长期使用而言是非常重要和必要系统的开发。

软件在设计后必须进行测试,调试过程中使用的方法是软件测试方法。在开发新软件时,系统测试是检查软件是否合格的关键步骤,以及是否符合设计目标的参考。测试主要是查看软件中数据的准确性,正确的操作与否,以及操作的结果,还有哪些方面需要改进。

个性化微课教学视频推荐系统的实现,对于系统中功能模块的实现及操作都必须通过测试进行来评判系统是否可以准确的实现。在个性化微课教学视频推荐系统正式上传使用之前必须做的一步就是系统测试,对于测试发现的错误及时修改处理,保证系统准确无误的供给用户使用。

5.2系统测试方法

在对个性化微课教学视频推荐系统进行测试的时候在找到问题的情况下必须在第一时间找到解决问题的办法,不要存在侥幸的心理,这样才能让个性化微课教学视频推荐系统开发的质量可以过关,并且开发的周期会大大缩短,还有就是在测试时,不要出现重复性的错误,遇到一个错误问题,要将整个个性化微课教学视频推荐系统开发所牵扯的该问题都必须一一解决,提高个性化微课教学视频推荐系统的安全性、稳定性。

白盒测试与黑盒测试是测试中比较常用的两种方法。

①结构测试俗称白盒测试:这种测试是在对程序的处理过程与结构都有详尽谅解的前提下,顺从程序内部的逻辑而完成的系统测试,以确定系统中所有的通路都能够遵照设计要求正常工作,不出现任何偏差。

②功能测试又成黑盒测试:主要是针对程序功能能够按照设计正常实现的一种检测,在程序接口处进行,检测程序手法数据是否正常,与外部信息的交换是否完整。

5.3功能测试

用户登录测试:

模块名称

测试用例

预期结果

实际结果

是否通过

登录模块

用户名:admin   密码:123  

弹出错误提示,提示密码错误

弹出错误提示,提示密码错误

通过

登录模块

用户名:123   

密码:admin   

弹出错误提示,提示用户名错误

弹出错误提示,提示用户名错误

通过

登录模块

用户名:admin   

密码:admin   

管理员登录成功

管理员登录成功

通过

删除分类测试:

模块名称

测试用例

预期结果

实际结果

是否通过

删除分类模块

分类名:最新通知  

删除成功、页面自动跳转

删除成功、页面自动跳转

通过

修改密码测试:

模块名称

测试用例

预期结果

实际结果

是否通过

修改密码模块

原密码:666

新密码:123

确认密码:123  

弹出错误提示,提示原密码错误

弹出错误提示,提示原密码错误

通过

修改密码模块

原密码:admin   新密码:123

确认密码:333  

弹出错误提示,提示确认密码不一致

弹出错误提示,提示确认密码不一致

通过

修改密码模块

原密码:admin   新密码:123

确认密码:123  

密码修改成功

密码修改成功

通过

通过对功能的测试,个性化微课教学视频推荐系统的基本功能都是可行的,不管是系统里面的功能,还是界面的设计都是可值得推广宣传的。

  1.   总结

本文详细阐述了基于JAVA语言、SSM框架和MySQL数据库技术构建的个性化微课教学视频推荐系统。通过对微课教学视频推荐的业务流程进行深入分析,结合用户学习行为和偏好,成功实现了个性化的视频推荐功能。经过多次调试和测试,系统显示出了良好的稳定性和实用性,基本满足了个性化微课教学视频推荐的业务需求。

系统界面设计简洁美观,用户体验流畅,操作便捷,充分展现了SSM框架和JAVA语言在构建Web应用方面的优势。然而,由于时间紧迫以及个人经验所限,本系统仍存在一定的问题和不足。

在数据输入方面,系统尚未实现全面的数据格式校验,这可能导致部分不符合规则的数据通过验证,从而影响推荐的准确性。未来版本中将加强数据验证和清洗,确保输入数据的准确性和完整性。

系统功能尚待进一步完善。目前系统主要实现了微课视频的推荐、用户注册和课程管理等功能,未来可以考虑增加更多在线学习功能,如课程评论、学习进度跟踪等,以丰富用户体验。

虽然系统已经过多次调试,但仍可能存在一些潜在漏洞和错误。在实际应用中,我们将持续关注系统表现,及时修复漏洞,优化性能,确保系统稳定可靠地为用户提供个性化微课教学视频推荐服务。

总体而言,本个性化微课教学视频推荐系统虽存在不足,但已初步实现了预期目标。随着技术的不断进步和需求的持续升级,相信未来的系统将更加完善、智能,为教育领域的信息化和智能化发展做出更大的贡献。

参考文献

[1]Fitriyah N ,Yuniarti T,Wahyono E, et al.Clean Water Issues, Community Behavior and Communication Models in Sustainable Development Goals 6 in Banten West Java Indonesia[J].International Journal of Sustainable Development and Planning,2024,19(1):

[2]Sagala M P ,Bhomia K R ,Murdiyarso D .Assessment of coastal vulnerability to support mangrove restoration in the northern coast of Java, Indonesia[J].Regional Studies in Marine Science,2024,70103383-.

[3]Kartini A G ,Gumilar I ,Abidin Z H , et al.3D model of Pawon Cave: The first prehistoric dwelling discovery in West Java, Indonesia[J].Digital Applications in Archaeology and Cultural Heritage,2024,32e00311-.

[4]Febriyanti M R ,Saefullah K ,Susanti D R , et al.Knowledge, attitude, and utilization of traditional medicine within the plural medical system in West Java, Indonesia.[J].BMC complementary medicine and therapies,2024,24(1):64-64.

[5]Purwitaningsih S ,Asano J .Pre-disaster adaptation strategies for houses in landslide-prone residential area, case study of Giripurno Village, Borobudur Sub-District, Central Java, Indonesia[J].International Journal of Disaster Risk Reduction,2024,101104211-.

[6]高俊杰,孙鹏霞,刘义汉,等.基于SSM的网上订餐管理系统[J].软件,2024,45(01):168-173.

[7]王云亮,胡琳.基于SSM框架结构的高职学生岗位实习过程管理系统设计[J].信息与电脑(理论版),2024,36(01):251-253.

[8]白茹鑫.基于SpringBoot+SSM框架的企业安全培训管理系统设计与实现[J].现代信息科技,2024,8(01):44-49.DOI:10.19850/j.cnki.2096-4706.2024.01.009.

[9]吕婉婷,王继东.基于学习风格的个性化推荐系统设计研究[J].办公自动化,2023,28(19):62-64.

[10]岳佩,张浩.基于深度学习的英语教学资源个性化推荐系统[J].信息技术,2023,(06):149-153+160.DOI:10.13274/j.cnki.hdzj.2023.06.027.

[11]徐如平.云存储背景下微课教学在中职学测课程中的实践研究[J].国家通用语言文字教学与研究,2023,(05):132-134.

[12]郭锋.基于知识图谱的高职英语教学资源推荐系统设计[J].信息与电脑(理论版),2023,35(09):232-234.

[13]苏寅初.基于数学抽象素养下的高中数学微课教学研究[D].合肥师范学院,2023.DOI:10.27829/d.cnki.ghfsy.2023.000109.

[14]孙飞.基于高中数学的微课教学模式构建与应用分析[J].数学学习与研究,2023,(12):53-55.

[15]谭秦红,邓旭明,田应信.基于协同过滤的计算机课程线上教学资源推荐系统[J].信息与电脑(理论版),2023,35(03):240-242.

[16]刘振栋,罗群.职业教育领域教学个性化视频智能推荐研究[J].电脑知识与技术,2022,18(34):104-106.DOI:10.14004/j.cnki.ckt.2022.2188.

[17]董庆超.基于大数据的思政课程线上教学资源推荐系统设计[J].信息与电脑(理论版),2022,34(19):13-15.

[18]彭小华,谭菊华,邱芬.基于大数据的思政教学资源推荐系统设计[J].信息与电脑(理论版),2022,34(14):227-229.

[19]樊天隆.基于信息技术的小学数学微课教学探究[J].科学咨询(科技·管理),2019,(11):136.

[20]林浩.普通高校排球选项课实施微课教学的实验研究[D].扬州大学,2019.DOI:10.27441/d.cnki.gyzdu.2019.001280.

  

这次毕业设计能够完成,最重要的就是来自指导老师的帮助,老师不厌其烦的对我的论文及毕业设计提出非常有建设性的建议,我的毕设能够完成离不开老师的帮助。我对老师由衷的表示感谢,

其次要感谢大学四年里学院里所有的任课老师的教导,老师们在我整个大学四年里给予了我丰富的知识,让我能够在大学中不虚度光阴,踏踏实实的学习,没有这些老师不辞辛劳的教诲,我无法完成这四年的学业。

由于自己的水平有限,毕设仍然存在着很大的缺陷,各位老师若提出意见,我会努力改正。

免费领取项目源码,请关注❥点赞收藏并私信博主,谢谢~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/42835.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

谷粒商城学习笔记-逆向工程错误记录

文章目录 1&#xff0c;Since Maven 3.8.1 http repositories are blocked.1.1 在maven的settings.xml文件中&#xff0c;新增如下配置&#xff1a;1.2&#xff0c;执行clean命令刷新maven配置 2&#xff0c;internal java compiler error3&#xff0c;启动逆向工程报错&#x…

【Linux】网络新手村

欢迎来到 破晓的历程的 博客 ⛺️不负时光&#xff0c;不负己✈️ 引言 今天&#xff0c;我们就开始学习Linux网络相关的内容。这篇博客作为Linux网络板块的第一篇博客看&#xff0c;我们首先要带着大家明白Linux网络的一些名词的概念&#xff0c;为之后的学习扫清障碍。然后我…

新加坡工作和生活指北:餐饮出行篇

文章首发于公众号&#xff1a;Keegan小钢 ​餐饮 前一篇文章 说到&#xff0c;有些房东不允许房客煮饭&#xff0c;那在新加坡都去哪吃饭&#xff1f;有什么吃的呢&#xff1f; 比较便宜的餐饮场所就是小贩中心、咖啡店和冷气食阁&#xff0c;也是大部分人常去的就餐场所。咖…

分布式整合

一、分布式架构介绍 什么是分布式系统 分布式系统指一个硬件或软件组件分布在不同的网络计算机上&#xff0c;彼此之间仅仅通过消息传递进行通信和协调的系统。 通俗的理解&#xff0c;分布式系统就是一个业务拆分成多个子业务&#xff0c;分布在不同的服务器节点&#xff0…

ASP.NET Core----基础学习03----开发者异常页面 MVC工作原理及实现

文章目录 1. 开发者异常页面(1)Startup.cs 页面的基础配置(2)自定义显示报错代码的前后XX行 2. MVC 的原理3. MVC 的实现4.默认路由路径5.返回Json字符串 1. 开发者异常页面 (1)Startup.cs 页面的基础配置 namespace ASP.Net_Blank {public class Startup{private readonly IC…

FlowUs息流:提升学术研究效率的协作神器

在学术界&#xff0c;论文撰写和小组协作是日常研究工作的重要组成部分。FlowUs作为一个多功能的协作平台&#xff0c;为大学教授和学生提供了一个无缝的工作环境&#xff0c;使这些任务变得更加顺畅。 FlowUs模板中心 高校学生教师 专用模板免费 &#x1f393; 教授的论文管…

Webpack安装以及快速入门

3 Webpack 1 什么是Webpack https://webpack.js.org/ (官网) webpack 是一个现代 javascript 应用程序的 静态模块打包器 (module bundler) 待会要学的 vue-cli 脚手架环境, 集成了 webpack, 所以才能对各类文件进行打包处理 webpack是一个 静态模块 打包器,可以做以下的这…

计算机的错误计算(二十四)

摘要 计算机的错误计算&#xff08;二十一&#xff09;就案例 展示了“两个不相等数相减&#xff0c;差为0”。本节给出新的计算过程&#xff1a;不停增加计算精度直到出现非0结果。这个过程与结果表明&#xff0c;即使是专业数学软件&#xff0c;对这个问题的处理&#xff0…

【ffmpeg系列一】源码构建,ubuntu22与win10下的过程对比。

文章目录 背景ubuntu22结论 win10过程 对比结论 背景 顺手编译个ffmpeg试试&#xff0c;看看不同平台下谁的配置比较繁琐。 先让gpt给出个教程&#xff1a; ubuntu22 使用elementary-os7.1构建&#xff0c;看看有几个坑要踩。 错误1&#xff1a; 依赖libavresample-dev未…

【人工智能】-- 智能家居

个人主页&#xff1a;欢迎来到 Papicatch的博客 课设专栏 &#xff1a;学生成绩管理系统 专业知识专栏&#xff1a; 专业知识 文章目录 &#x1f349;引言 &#x1f349;基于深度卷积神经网络的表情识别 &#x1f348;流程图 &#x1f348;模型设计 &#x1f34d;网络架…

[图解]企业应用架构模式2024新译本讲解24-标识映射3

1 00:00:00,460 --> 00:00:02,580 超类定义了一个抽象方法 2 00:00:03,170 --> 00:00:03,450 3 00:00:06,410 --> 00:00:09,690 把reader内容 4 00:00:10,870 --> 00:00:12,350 把它变成一个领域对象 5 00:00:13,690 --> 00:00:15,800 但这里只是把它变成一个…

python安装PyTorch+cuda

1,最终结果 import torchprint(torch.cuda.is_available()) #显示True&#xff0c;则安装成功 print(torch.__version__)#打印当前PyTorch版本号。 print(torch.version.cuda)#打印当前CUDA版本号。 print(torch.backends.cudnn.version())# 打印当前cuDNN版本号。 print(torc…

【爱上C++】vector用法详解

文章目录 一:vector简介二:vector的创建和初始化三:vector的遍历1.[]下标2.at()3.迭代器遍历4.范围for 四:vector的空间1.size2.max_size3.capacity4.reserve5.resize6.empty 五:vector的增删查改1.push_back2.pop_back3.find4.insert5.erase6.swap7.assign Hello~同学们好&…

docker nginx mysql redis

启动没有数据卷的nginx docker run -d -p 86:80 --name my-nginx nginx把/etc/nginx中的配置复制到宿主机 docker cp my-nginx:/etc/nginx /home/nginxlkl把/html 中的文件复制到宿主机 docker cp my-nginx:/etc/nginx /home/nginxlkl删除当前镜像 docker rm -f my-nginx重新起…

HarmonyOS ArkUi 字符串<展开/收起>功能

效果图&#xff1a; 官方API&#xff1a; ohos.measure (文本计算) 方式一 measure.measureTextSize 跟方式二使用一样&#xff0c;只是API调用不同&#xff0c;可仔细查看官网方式二 API 12 Preview Component export struct CustomTextSpan {State maxLines: number 1/…

迭代器模式(大话设计模式)C/C++版本

迭代器模式 C #include <iostream> #include <string> #include <vector>using namespace std;// 迭代抽象类,用于定义得到开始对象、得到下一个对象、判断是否到结尾、当前对象等抽象方法&#xff0c;统一接口 class Iterator { public:Iterator(){};virtu…

作为产品经理,如何用大模型给我们赋能?非常详细,收藏我这篇就够了

作为一名产品经理&#xff0c;如果您考虑转行至大模型领域&#xff0c;您将能够将产品管理技能与大模型技术相结合&#xff0c;从而在产品开发和创新方面获得一系列好处。以下是转行大模型对产品经理的一些潜在益处&#xff1a; 更深入的技术理解&#xff1a;了解大模型技术将…

使用 Python 处理 Lumerical 导出的 .txt 文件(完结)

使用 Python 处理 Lumerical 导出的 .txt 文件 引言正文以 , 隔开的波长与透射率以 \t 隔开的波长与透射率引言 之前在 添加链接描述 一文中我们已经介绍了如何将 Lumerical 仿真中的 S 参数相关数据导出为 .txt 文件。这里我们来分享如何使用 Python 对这些数据进行处理。 正…

如果国产BI工具也有顶流,它们一定会上榜

在数据驱动的今天&#xff0c;商业智能&#xff08;BI&#xff09;工具已成为企业不可或缺的助手&#xff0c;它们通过强大的数据处理和分析能力&#xff0c;帮助企业洞察市场趋势&#xff0c;优化运营决策。如果BI工具界也有“顶流”&#xff0c;那么奥威BI、帆软BI&#xff0…

我国甜菜碱行业规模较大 未来行业发展前景较好

我国甜菜碱行业规模较大 未来行业发展前景较好 甜菜碱化学名称三甲基甘氨酸&#xff0c;是一种在动植物体内广泛存在的季铵型生物碱。它具有多种生物学功能&#xff0c;包括渗透调节、甲基供体等&#xff0c;广泛应用于饲料、食品、医药和化妆品等行业。甜菜碱的提取主要来源于…