springboot“星火薪火”资源平台--附源码01941

摘  要

随着互联网技术和移动设备的普及,在线学习平台已成为现代教育不可或缺的一部分。微信小程序作为一种轻量级、易用性高的应用形式,为学习教育资源的传播和学习提供了新的可能。

本研究旨在设计和实现一个基于微信小程序的“星火薪火”资源平台,为用户提供全面、便捷的学习资源和交流环境。本研究首先分析了现有在线学习平台的优缺点,结合微信小程序的特性,设计了包括但不限于用户管理、资源管理(行业资讯、考试题库)、交流管理、学习笔记管理和系统管理等多个模块的平台架构。随后,采用敏捷开发方法,逐步实现各个功能模块,并进行了多轮测试和优化。

本“星火薪火”资源平台基于微信小程序,采用Spring Boot开发框架,使用MySQL数据库作为数据储存单元,结合云数据库技术,实现了前后端分离的系统架构。在功能实现上,运用了模块化设计思想,确保系统的可扩展性和维护性。通过本研究,成功开发了一个功能完善、用户友好的“星火薪火”资源平台,该平台不仅满足了用户多样化的学习需求,还为学习教育资源的共享和交流提供了新的渠道。实际应用表明,该平台显著提高了学习效率和用户满意度,为推动在线学习教育的发展做出了积极贡献。

关键词:“星火薪火”资源平台;Spring Boot框架;微信小程序;MySQL;学习资源共享

Abstract

With the popularization of Internet technology and mobile devices, online learning platform has become an indispensable part of modern education. WeChat mini programs, as a lightweight and user-friendly application form, provide new possibilities for the dissemination and learning of educational resources.

The aim of this study is to design and implement a "Spark" resource platform based on WeChat mini programs, providing users with comprehensive and convenient learning resources and communication environments. This study first analyzed the advantages and disadvantages of existing online learning platforms, and combined with the characteristics of WeChat mini programs, designed a platform architecture that includes but is not limited to user management, resource management (industry information, exam question bank), communication management, learning note management, and system management modules. Subsequently, agile development methods were adopted to gradually implement various functional modules, and multiple rounds of testing and optimization were conducted.

This "Spark" resource platform is based on WeChat mini programs, using the Spring Boot development framework, MySQL database as the data storage unit, and cloud database technology to achieve a front-end and back-end separation system architecture. In terms of functional implementation, the modular design concept is applied to ensure the scalability and maintainability of the system. Through this study, a fully functional and user-friendly "Starfire" resource platform has been successfully developed. This platform not only meets the diverse learning needs of users, but also provides new channels for sharing and exchanging learning and educational resources. Practical application has shown that the platform significantly improves learning efficiency and user satisfaction, making a positive contribution to promoting the development of online learning and education.

Key words: "Starfire" resource platform; Spring Boot framework; WeChat Mini Program; MySQL; Learning resource sharing.

目  录

1 前  言

1.1 选题背景

1.2 研究意义

1.3 国内外研究现状

1.3.1 国内研究现状

1.3.2 国外研究现状

1.4 系统的特点

1.5 论文结构与章节安排

2 关键技术

2.1 Java编程语言

2.2 MySQL数据库

2.3 Spring Boot开发框架

2.4 B/S与C/S模式

2.5 微信小程序与微信开发者工具

3 系统分析

3.1 可行性分析

3.1.1 技术可行性

3.1.2 经济可行性

3.1.3 操作可行性

3.2 功能需求分析

3.3 系统性能分析

3.4 系统流程分析

3.4.1 程序操作流程

3.4.2 登录流程

3.4.3 注册流程

4 系统设计

4.1 总体设计

4.1.1 系统架构设计

4.1.2 功能模块设计

4.2 数据库设计

4.2.1 数据库E-R图

4.2.1 数据库表结构设计

5 系统实现

5.1 系统环境分析

5.2 系统前台模块

5.2.1 用户登录界面

5.2.2 用户注册界面

5.2.3 首页界面

5.2.4 我的界面

5.3 后台管理模块

5.3.1 系统用户界面

5.3.2 课程资料管理界面

5.3.3 系统管理界面

5.3.4 资源管理界面

6 系统测试

6.1 测试目的

6.2 测试用例

6.3 测试分析

7 结束语

参考文献

致  谢

 

1   

1.1选题背景

在当今信息化时代,学习教育资源的数字化和网络化已成为不可逆转的趋势。传统的学习方式正在被更加灵活、便捷的在线学习模式所补充和替代。然而,现有的在线学习平台仍存在一些问题,如资源分散、用户体验不佳、互动性不足等。

微信作为中国最广泛使用的社交媒体平台,其小程序功能为开发轻量级、易用性高的应用提供了理想的环境。微信小程序无需下载安装,即用即走,这一特性非常适合打造快速、便捷的学习资源共享平台。同时,随着"互联网+"教育的深入发展,人们对个性化、多样化的学习资源需求日益增长。整合各类学习资料,包括考试题库、课程资料等,并提供便捷的管理和交流功能,成为设计现代学习平台的重要考虑因素。

在这样的背景下,开发一个基于微信小程序的综合性学习资源平台,不仅能够满足用户的多元化学习需求,还能充分利用微信生态系统的优势,推动学习教育资源的广泛传播和有效利用。

1.2研究意义

基于现代化科学技术开发一款“星火薪火”资源平台,以搭建一个便捷、有效且友好的资源共享和管理平台,为用户提供一站式的资源获取与学习交流服务,是顺应时代发展的必然选择,具有重要的实践意义和应用前景。

本文研究的“星火薪火”资源平台涵盖交流互动、行业资讯、在线考试、课程资料、学习笔记等多种信息内容资源共享。一方面可以为学习者提供了一个集资源获取、学习管理、交流互动于一体的综合平台,有效提高学习效率和体验。另一方面能够促进优质学习教育资源的共享和传播,有助于缓解学习教育资源分布不均的问题。同时,借助本平台可以为教育工作者提供了一个便捷的资源管理和教学互动工具,有利于提高教学质量和效果。通过整合多样化的学习资源(如试题、课程、笔记、绘本、剧本等),丰富了学习教育内容,满足了不同用户的个性化需求。并且,借助微信小程序的普及性,可以有效降低用户使用门槛,有利于推广全民学习的理念。此外,本研究不仅可以丰富微信小程序在教育领域的应用研究,为未来类似平台的开发提供了理论参考,还探索了移动学习与社交媒体结合的新模式,为教育技术的创新发展提供了新思路。通过实践验证了模块化设计在教育类应用开发中的可行性和优势。

总体而言,本研究不仅在技术层面探索了新型学习平台的开发方法,还在实践层面为推动教育信息化和终身学习事业的发展做出了积极贡献。

1.3国内外研究现状

1.3.1国内研究现状

近年来,国内掀起了一股微信小程序应用的热潮。许多企业和个人都在利用微信小程序提供的便捷功能,开发出各种类型的应用程序。在教育培训领域,也陆续出现了一些基于微信小程序的学习资源平台,如“学而思网校”、“知到课堂”等。这些平台通过小程序为用户提供了课程资料、学习笔记、在线考试等功能,满足了用户的学习需求。同时,一些高校和培训机构也尝试利用微信小程序搭建自己的学习资源平台,如清华大学的“清华同学”小程序,中国石油大学的“大学之窗”小程序等。这些平台不仅提供了课程资源,还实现了师生互动、作业提交等功能。

1.3.2国外研究现状

国外在微信小程序应用方面起步略晚,但发展迅速。一些国外知名企业和组织也开始尝试利用微信小程序提供服务。例如,美国知名电商公司亚马逊就在2017年推出了自己的微信小程序,帮助中国消费者更方便地购买商品。此外,一些教育机构也开始关注微信小程序在教育领域的应用。比如,新加坡国立大学就开发了一款专门面向留学生的微信小程序,提供校园导览、课程表查询、校园活动等功能。这些都反映了国外在利用微信小程序构建各类应用的探索和实践。

总的来说,国内外都在微信小程序应用方面进行了积极的探索,特别是在教育培训领域,涌现了一些有代表性的案例。“星火薪火”资源平台的设计与实现,将有助于进一步丰富这一领域的研究成果。

1.4系统的特点

(1)“星火薪火”资源平台中的web后台管理中的后端不再使用古老的jsp+javabean+servlet技术,而是使用当前主流的Spring Boot框架,它减少Java配置代码,简化编程代码,目前Spring Boot框架也是很多企业选择的框架之一。

(2)“星火薪火”资源平台中的前端使用的是微信小程序技术,它是不需要下载安装即可使用的应用程序,具有使用方便、传播快速、体验优秀等优势。

(3)“星火薪火”资源平台中数据库用的MySQL,它执行效率高,运行速度快,安全性能也很高,同时无平台限制。

1.5论文结构与章节安排

本文共分为七章,章节内容安排如下:

第一章:前言,主要介绍“星火薪火”资源平台领域研究的背景和意义,概述研究的现状和系统特点。

第二章:关键技术,主要探讨和说明实现“星火薪火”资源平台的关键技术。

第三章:系统分析,主要从“星火薪火”资源平台的可行性、功能、性能等方面进行分析,为后续系统设计提供理论支持。

第四章:系统设计,主要对“星火薪火”资源平台功能模块、数据库进行功能设计。

第五章:系统实现,主要介绍了“星火薪火”资源平台各个用户的功能、系统界面的实现。

第六章:系统测试,主要对“星火薪火”资源平台进行测试,验证功能完整性、稳定性和安全性,评估系统在实际运行中的性能表现。

第七章:结束语。总结全文研究内容,提出对共建平台领域未来发展的展望和建议,指出研究的不足和可优化之处,为相关领域的进一步探索提供参考。

2  关键技术

本“星火薪火”资源平台的设计与开发,主要基于Spring Boot框架,结合MySQL数据库,使用Java语言进行业务逻辑的实现和构建系统后端业务;前端采用微信小程序技术,利用微信开发者工具进行开发与设计用户友好且可移动的交互界面;同时系统采用B/S(Browser/Server)模式,实现了前后端分离,同时也支持C/S(Client/Server)模式,满足不同用户的使用需求。

2.1Java编程语言

Java是一种面向对象的编程语言,具有跨平台、安全性高、性能优秀的特性,被广泛用于开发各种类型的应用程序,包括Web应用、移动应用和大型软件系统。Java使用Java虚拟机(JVM)来运行程序,具有良好的可移植性和健壮性。Java广泛应用于企业级应用、Web应用和移动应用的开发。在Spring Boot框架中,Java语言被广泛应用于后端业务逻辑的实现。

2.2MySQL数据库

MySQL是一种开源的关系型数据库管理系统(RDBMS),广泛用于Web应用程序的数据存储。它具有高性能、高可靠性和易扩展性的特点,符合ACID事务规则,支持多种存储引擎,如InnoDB、MyISAM等,是Spring Boot项目中常用的数据库,用于存储和管理数据,提供多种安全机制,以保证数据安全性。

2.3Spring Boot开发框架

Spring Boot是一个用于快速构建基于Spring的应用程序的框架。它简化了Spring应用程序的初始搭建及开发过程,它通过约定优于配置的原则,减少了繁琐的配置,使开发者能够更加专注于业务逻辑的编写,快速开发出可运行的Spring应用程序。Spring Boot还内置了许多常用的配置,提供了强大的自动配置功能,实现各种模块的集成和管理。

2.4B/S与C/S模式

B/S(Browser/Server)模式是一种软件系统的结构模式,该模式基于浏览器的C/S(Client/Server)架构,通过浏览器访问服务器上的应用程序。B/S模式具有易于部署、维护成本低、跨平台等优点,适用于Web应用的开发。

C/S(Client/Server)模式是一种软件系统的结构模式,该模式基于客户端/服务器架构,通过客户端访问服务器上的应用程序。C/S模式具有高效的交互性和良好的用户体验,适用于需要复杂交互的桌面应用,需要更高性能和安全性的应用场景。

2.5微信小程序与微信开发者工具

微信小程序是一种不需要下载安装即可使用的应用程序,它基于微信公众平台开发,可以在微信内被便捷地获取和传播,用户只需通过微信扫一扫或搜索即可启动。小程序具有加载速度快、使用方便、用户体验好的特点,适用于轻量级的应用开发。微信小程序的开发采用前端技术栈,主要包括WXML、WXSS、JavaScript和wxs等。

微信开发者工具是一个集成开发环境(IDE),用于开发、调试和发布微信小程序。它提供了丰富的开发工具和调试功能,包括编码、预览、上传等功能,方便开发者快速开发和测试小程序。

3  系统分析

3.1可行性分析

3.1.1技术可行性

从技术角度来看,Spring Boot作为一种轻量级、快速构建的Java框架,能够提高开发效率,降低系统的复杂程度,易于维护和升级。同时,MySQL作为关系型数据库,能够支持平台数据的存储与管理,保障系统的稳定性和高效性。因此,本系统具有技术可行性。

3.1.2经济可行性

从经济角度来看,基于Spring Boot搭建优化共建平台的投入成本相对较低,因为Spring Boot本身是一个免费、开源的框架,可以节省开发成本。同时,使用MySQL作为数据库也具有成本效益高的优势。小程序无需下载即可使用,并具有加载速度快、使用方便的特点,适用于轻量级的应用开发,方便用户快速上手使用,能够更好地吸引用户参与,从而提升平台的商业化价值,增加商业合作和广告推广等收入来源。因此,本系统具有经济可行性。

3.1.3操作可行性

从操作角度来看,Spring Boot的简洁性和高度集成的特点使得系统的部署和运行相对简单,容易维护和管理。同时,微信小程序作为用户主要的操作入口,界面友好且操作简单,有利于用户体验的优化,提升用户的参与度和留存率。因此,本系统具有操作可行性。

综合来看,基于Spring Boot的优化共建平台的设计与实现在经济、技术、操作等方面都具有较高的可行性,能够为用户提供便捷的服务。

3.2功能需求分析

根据用户需求分析,基于Spring Boot和微信小程序开发的“星火薪火”资源平台可以分为注册用户和管理员两大角色,各角色用例图及相应功能分析说明如下。

系统前台小程序端注册用户角色用例如下图所示。

图3.1注册用户用例图

系统前台小程序端注册用户具体功能说明如下所示。

  1. 注册登录:提供注册登录系统功能,用户可注册并登录系统,支持对个人信息进行管控,并提供忘记密码操作。
  2. 首页:用户登录系统后首先进入首页界面,可查看轮播图、公告信息、行业资讯等系统概览和推荐信息,并提供考试题库、课程资料、学习笔记、绘本信息、剧本信息等系统功能入口子功能;用户可根据自身需求选择相应功能进行操作。例如,可在“考试题库”进行答题和查看分数;可搜索和浏览课程资料、学习笔记、绘本信息、剧本信息等信息,并进行收藏、点赞和评论。
  3. 行业资讯:当用户点击“行业资讯”这一按钮时,可进入行业资讯展示页面,支持搜索和浏览行业资讯详情内容,进行点赞、评论、收藏操作。
  4. 交流互动:当用户点击“交流互动”这一按钮时,可进入交流互动展示界面,支持搜索和浏览交流互动详情内容,进行点赞、评论、收藏操作;并提供发布内容操作,发布交流互动贴子。
  5. 我的:当用户在前台点击“我的”可以对用户的基本信息、收藏、学习笔记、论坛管理等信息进行管理。可在“基本信息”中修改资料和密码;可在“收藏”中查看管控自己收藏的各类系统信息;可在“学习笔记”中增改删查自己的学习笔记内容,并进行支付;可在“论坛管理”中管控已发布的交流互动帖子和其评论。

系统后台管理端管理员角色用例如下图所示。

图3.2管理员用例图

系统后台管理端管理员具体功能说明如下所示。

  1. 登录:管理员可直接使用账号密码登录系统后台,进行管理,可对自己的个人信息和密码信息进行修改。
  2. 系统用户:管理员可管理系统的所有系统用户信息,包括注册用户、管理员账号等,支持用户权限管理和角色设置,可增改删查和审核系统用户信息。
  3. 资料分类管理:管理员可管理所有资料分类信息,包括新增、编辑、删除资料分类,提供搜索功能。
  4. 课程资料管理:管理员可管理所有课程资料信息的发布、下架、更新等操作,提供搜索功能,支持查看和管控评论。
  5. 学习笔记管理:管理员可管理所有学习笔记信息,包括新增、编辑、删除绘本信息,提供搜索功能,支持查看和管控评论。
  6. 绘本信息管理:管理员可管理所有绘本信息的发布、下架、更新等操作,提供搜索功能,支持查看和管控评论。
  7. 剧本信息管理:管理员可管理所有剧本信息,包括新增、编辑、删除绘本信息,提供搜索功能,支持查看和管控评论。
  8. 系统管理:管理员可管理系统的轮播图信息,包括新增、编辑、删除轮播图,提供搜索功能,支持添加图片附带链接。
  9. 公告信息管理:管理员可管理平台发布的公告信息,包括新增、编辑、删除公告信息,提供搜索功能。
  10. 资源管理:管理员可管理行业资讯、资讯分类,以及考试题库的新增、编辑、删除等操作,提供搜索功能,支持对行业资讯的评论管控和查看;考试题库模块还提供题库、答题、评分等功能。
  11. 交流管理:管理员可管理交流互动和互动分类的新增、编辑、删除等操作,提供搜索功能,支持对交流互动的评论管控和查看。

3.3系统性能分析

对于Spring Boot“星火薪火”资源平台的设计与实现,下面是系统性能分析表:

表3.1性能需求表

项目

内容

响应时间

系统对用户请求的响应时间需在500ms以内

并发用户数

系统需要支持1000个并发用户同时访问

吞吐量

系统每秒需要处理1000个请求

可用性

系统需要保证每月99.9%的可用性

数据安全

用户敏感数据需要加密存储,并支持数据库备份和恢复

数据一致性

系统中的数据操作需保证ACID特性,确保数据一致性

扩展性

系统需要支持水平扩展,能够方便地增加服务器节点以应对高请求量

可维护性

系统代码需要清晰易懂、结构良好,方便团队成员维护和修改

日志记录

系统需要记录用户操作日志、异常日志以及系统运行日志

监控报警

系统需要实时监控运行状态,当系统异常时能够及时发送警报通知相关人员

缓存设置

针对频繁使用的数据,系统需要进行合适的缓

3.4系统流程分析

3.4.1程序操作流程

用户访问平台网站,可以选择进行注册或登录操作。注册成功后,用户可以使用注册的账号登录平台。登录后的用户可以进入系统功能界面,使用自己权限内的功能操作。程序操作流程图如下图所示。

图3.3程序操作流程图

3.4.2登录流程

用户访问平台的网站,进入登录页面页面,入其用户名和密码,后端服务接收登录请求,验证用户提供的用户名和密码是否匹配数据库中存储的信息,验证通过即可登录成功。登录流程图如下图所示。

图3.4登录流程图

3.4.3注册流程

未有账号的用户可进入注册界面进行注册操作,填写注册表格,包括用户名、密码、电子邮件等必要信息。后台系统验证并保存用户提交的信息。分配唯一用户标识符。注册成功后,用户可以使用账号密码进行登录。用户注册流程图如下图所示。

图3.5注册流程图

4  系统设计

4.1总体设计

4.1.1系统架构设计

目前B/S体系的系统主要的数据访问方式是:通过浏览器页面用户可以进入系统,系统可以自动对用户向服务器发送的请求进行处理,处理请求是在系统后台中进行的,用户在浏览器页面上进行相应操作,就能够看到服务端传递的处理结果。“星火薪火”资源平台主要分为视图-模型-控制三层架构设计。在视图层中,主要是操作在服务器端向客户端反馈并显示的数据,在模型层中,主要处理相关的业务逻辑、数据整合等,最后的控制层它介于视图和模型之间,主要是调整两层之间的关系,最终落实数据的传递。B/S架构的优势在于其跨平台性和易于维护性,开发者可以通过更新服务器端的代码来实现整个系统的升级和维护,而无需逐一更新客户端。

图4.1系统架构图

4.1.2功能模块设计

功能模块设计是系统开发过程中的重要阶段,它旨在将系统划分为不同的模块,每个模块负责完成特定的功能或任务。“星火薪火”资源平台由多个功能模块组成,每个模块下又包含具体的功能操作。功能模块图如下图所示。

图4.2系统功能模块图

4.2数据库设计

4.2.1数据库E-R

E-R图有助于理清系统中的数据结构和关系,为后续的数据库表结构设计提供指导。在进行数据库设计之前,首先需要先绘制实体-关系(E-R)图。E-R图将帮助我们理清业务中的实体(Entity)及它们之间的关系(Relationship),从而为后续的数据库表设计提供基础。根据前文可以得出本“星火薪火”资源平台拥有多个实体,在此列举主要实体,各个实体之间联系总E-R图如下图所示。

图4.3系统总E-R图

4.2.1数据库表结构设计

在E-R图确定后,接下来可以根据实体和关系的属性设计数据库表结构。在E-R图明确了实体和它们之间的关系后,接下来可以开始设计数据库表结构。每个实体对应一个数据库表,每个属性对应表中的字段。如下列表格所示,在此列举主要数据表。

表course_materials (课程资料)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

course_materials_id

int

10

0

N

Y

课程资料ID

2

course_name

varchar

64

0

Y

N

课程名称

3

data_name

varchar

64

0

Y

N

资料名称

4

data_category

varchar

64

0

Y

N

资料类别

5

data_size

varchar

64

0

Y

N

资料大小

6

course_cover

varchar

255

0

Y

N

课程封面

7

data_introduction

text

65535

0

Y

N

资料介绍

8

information_content

text

65535

0

Y

N

资料内容

9

details_of_information

longtext

2147483647

0

Y

N

资料详情

10

hits

int

10

0

N

N

0

点击数

11

praise_len

int

10

0

N

N

0

点赞数

12

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

13

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表data_classification (资料分类)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

data_classification_id

int

10

0

N

Y

资料分类ID

2

data_category

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

更新时间

表exam (考试)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

exam_id

mediumint

8

0

N

Y

考试id

2

name

varchar

32

0

N

N

考试名称

3

duration

int

10

0

Y

N

答题时长

4

score

double

9

2

Y

N

总分

5

status

varchar

10

0

Y

N

状态:启用、禁用

表exam_question (试题)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

exam_question_id

mediumint

8

0

N

Y

2

type

varchar

20

0

Y

N

类型

3

title

varchar

255

0

Y

N

题目

4

question_item

varchar

500

0

Y

N

选项

5

answer

varchar

500

0

Y

N

参考答案

6

score

double

9

2

Y

N

总分

7

question_order

int

10

0

Y

N

排序

8

exam_id

mediumint

7

0

Y

N

所属试卷

表forum_type (论坛分类)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

type_id

smallint

5

0

N

Y

分类ID

2

name

varchar

16

0

N

N

分类名称

3

description

varchar

255

0

Y

N

描述

4

url

varchar

255

0

Y

N

外链地址

5

father_id

smallint

5

0

N

N

0

上级分类ID

6

icon

varchar

255

0

Y

N

分类图标

表learning_notes (学习笔记)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

learning_notes_id

int

10

0

N

Y

学习笔记ID

2

publish_user

int

10

0

Y

N

0

发布用户

3

user_name

varchar

64

0

Y

N

用户姓名

4

note_title

varchar

64

0

Y

N

笔记标题

5

note_taking_subject

varchar

64

0

Y

N

笔记科目

6

learning_date

date

10

0

Y

N

学习日期

7

note_category

varchar

64

0

Y

N

笔记类别

8

key_points_of_notes

text

65535

0

Y

N

笔记要点

9

note_content

text

65535

0

Y

N

笔记内容

10

hits

int

10

0

N

N

0

点击数

11

praise_len

int

10

0

N

N

0

点赞数

表picture_book_information (绘本信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

picture_book_information_id

int

10

0

N

Y

绘本信息ID

2

picture_book_name

varchar

64

0

Y

N

绘本名称

3

picture_book_type

varchar

64

0

Y

N

绘本类型

4

picture_book_author

varchar

64

0

Y

N

绘本作者

5

press

varchar

64

0

Y

N

出版社

6

publication_date

date

10

0

Y

N

出版日期

7

picture_book_introduction

text

65535

0

Y

N

绘本简介

8

picture_book_content

text

65535

0

Y

N

绘本内容

9

picture_book_details

longtext

2147483647

0

Y

N

绘本详情

10

hits

int

10

0

N

N

0

点击数

11

praise_len

int

10

0

N

N

0

点赞数

表registered_user (注册用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

registered_user_id

int

10

0

N

Y

注册用户ID

2

user_name

varchar

64

0

Y

N

用户姓名

3

user_gender

varchar

64

0

Y

N

用户性别

4

examine_state

varchar

16

0

N

N

已通过

审核状态

5

user_id

int

10

0

N

N

0

用户ID

表score (评分)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

score_id

int

10

0

N

Y

评分ID:

2

user_id

int

10

0

N

N

0

评分人:

3

nickname

varchar

64

0

Y

N

昵称:

4

score_num

double

5

2

N

N

0.00

评分:

5

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

6

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

7

source_table

varchar

255

0

Y

N

来源表:

8

source_field

varchar

255

0

Y

N

来源字段:

9

source_id

int

10

0

N

N

0

来源ID:

表script_information (剧本信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

script_information_id

int

10

0

N

Y

剧本信息ID

2

script_name

varchar

64

0

Y

N

剧本名称

3

script_type

varchar

64

0

Y

N

剧本类型

4

script_author

varchar

64

0

Y

N

剧本作者

5

script_theme

varchar

64

0

Y

N

剧本题材

6

release_date

date

10

0

Y

N

发布日期

7

script_introduction

text

65535

0

Y

N

剧本简介

8

script_content

text

65535

0

Y

N

剧本内容

9

script_details

longtext

2147483647

0

Y

N

剧本详情

10

hits

int

10

0

N

N

0

点击数

11

praise_len

int

10

0

N

N

0

点赞数

表user_answer (用户答题)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

user_answer_id

mediumint

8

0

N

Y

2

user_id

mediumint

7

0

N

N

用户ID

3

exam_id

mediumint

7

0

N

N

0

考试id

4

score

double

9

2

Y

N

0.00

分数

5

answers

text

65535

0

Y

N

答案

6

score_detail

text

65535

0

Y

N

评分详情

7

objective_score

double

9

2

Y

N

0.00

客观题得分

8

subjective_score

double

9

2

Y

N

0.00

主观题得分

9

score_state

tinyint

4

0

Y

N

0

评分状态

10

nickname

varchar

255

0

Y

N

提交人

11

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

12

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

13

comment_desc

varchar

255

0

Y

N

评语

5  系统实现

5.1系统环境分析

考虑到“星火薪火”资源平台主要面对部分人群,网站的访问量不大。系统处理、统计分析工作简单,Tomcat服务器能够满足中小型网络用户的数据处理,通过互联网Internet 接入及MySQL 5.6以上的数据库应用的需求点。系统具体开发环境如下表所示:

表5.1系统环境表

项目

开发环境

操作系统

Windows 11、Windows 10、Windows 8、Windows 7

开发语言

Java

使用框架

Spring Boot、小程序

体系结构

三层B/S体系结构

开发工具

IDEA(2020版)/MyEclipse(2017)/Eclipse、Vs Code/微信开发者工具

数据库

MySQL 5.6以上

数据库管理工具

Navicat

JDK版本

Java 1.8

Maven

apache-maven 3.6.1-bin

Tomcat

apache-tomcat-7.0.88

移动端

iOS、Android、Web(响应式)、以及各种小程序

5.2系统前台模块

5.2.1用户登录界面

用户输入用户名和密码后,系统首先对这些输入进行基本的格式验证,确保用户名和密码符合系统设定的格式要求(如长度、特殊字符要求等)。系统接收到用户输入后,会根据用户名查找系统中存储的用户信息数据库或者其他持久化存储方式。系统需要验证密码的正确性,验证成功即可成功登录。

图5.1用户登录界面设计

登录关键代码如下:

 /**

     * 登录

     * @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;

        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());

            Duration duration = Duration.ofSeconds(7200L);

            redisTemplate.opsForValue().set(accessToken.getToken(), accessToken,duration);

            // 返回用户信息

            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, "账号或密码不正确");

        }

    }

5.2.2用户注册界面

用户注册时,系统要求用户提供必要的信息,例如用户名、密码、电子邮件地址等。这些信息通常由用户在注册表单中输入,并通过前端验证确保格式的正确性。注册过程完成后,系统会为新用户创建一个账户。这包括分配一个唯一的用户ID和设置初始的权限或者角色。

图5.2用户注册界面设计

注册关键代码如下:

       /**

     * 注册

     * @param user

     * @return

     */

    @PostMapping("register")

    public Map<String, Object> signUp(@RequestBody User user) {

        // 查询用户

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

        Map<String,Object> map = JSON.parseObject(JSON.toJSONString(user));

        query.put("username",user.getUsername());

        List list = service.selectBaseList(service.select(query, new HashMap<>()));

        if (list.size()>0){

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

        }

        map.put("password",service.encryption(String.valueOf(map.get("password"))));

        service.insert(map);

        return success(1);

}     

5.2.3首页界面

用户登录系统后首先进入首页界面,可查看轮播图、公告信息、行业资讯等系统概览和推荐信息,并提供考试题库、课程资料、学习笔记、绘本信息、剧本信息等系统功能入口子功能;用户可根据自身需求选择相应功能进行操作。

例如,注册用户前台首页主界面图如下所示。

图5.3首页主界面设计

当用户点击首页的“考试题库”这一按钮时,可进入考试题库展示页面,支持搜索考试题库,提供答题操作,并可查看考试分数和答案(客观题由系统自动评分,主观题由管理员在后台评分)。

例如,前台首页考试题库界面图如下所示。

图5.4首页考试题库界面设计

例如,考试题库答题界面图如下所示。

图5.5考试题库答题界面设计

当用户点击首页的“课程资料”这一按钮时,可进入课程资料信息展示页面,支持搜索和浏览课程资料详情内容,进行点赞、评论、收藏操作。

例如,前台首页课程资料界面图如下所示。

图5.6首页课程资料详情页界面设计

5.2.4我的界面

当注册用户在前台点击“我的”可以对用户的基本信息、收藏、学习笔记、论坛管理等信息进行管理。可在“基本信息”中修改资料和密码;可在“收藏”中查看管控自己收藏的各类系统信息;可在“学习笔记”中增改删查自己的学习笔记内容,并进行支付;可在“论坛管理”中管控已发布的交流互动帖子和其评论。。

例如,注册用户我的主界面图如下所示。

图5.7我的主界面设计

例如,注册用户我的学习笔记界面图如下所示。

图5.8我的学习笔记界面设计

5.3后台管理模块

5.3.1系统用户界面

管理员可管理系统的所有系统用户信息,包括注册用户、管理员账号等,支持用户权限管理和角色设置。当管理员点击“系统用户”这一菜单时,可查看注册用户和管理员两个子菜单,如需添加新的用户,点击右侧“添加”按钮,输入用户信息,选择状态,点击“提交”按钮进行添加。同时可对系统用户进行增删改查操作。界面设计如下图所示。

图5.9系统用户界面设计

5.3.2课程资料管理界面

管理员可管理所有课程资料信息的发布、下架、更新等操作,提供搜索功能,支持查看和管控评论。当管理员点击“课程资料管理”这一菜单时,可查看课程资料列表和课程资料添加这两个子菜单,在课程资料列表,可查询和删除已发布的课程资料,查看详情和其评论内容;如需添加新的课程资料,点击“课程资料添加”这一子菜单,输入课程资料,点击“提交”按钮进行添加。

课程资料管理界面设计如下图所示。

图5.10课程资料管理界面设计

添加课程资料界面设计如下图所示。

图5.11添加课程资料界面设计

添加课程资料关键代码:

    @PostMapping("/add")

    @Transactional

    public Map<String, Object> add(HttpServletRequest request) throws IOException {

        service.insert(service.readBody(request.getReader()));

        return success(1);

    }

public Map<String, Object> addMap(Map<String,Object> map){

    service.insert(map);

     return success(1);

 }

5.3.3系统管理界面

当管理员点击“系统管理”这一菜单时,可进行系统首页轮播图的设置和修改,可点击添加,可上传新的图片,支持添加图片附带链接。界面设计如下图所示。

图5.12系统管理界面设计

上传图片关键代码如下:

      @PostMapping("/upload")

    public Map<String, Object> upload(@RequestParam("file") MultipartFile file) {

        log.info("进入方法");

        if (file.isEmpty()) {

            return error(30000, "没有选择文件");

        }

        try {

            //判断有没路径,没有则创建

            String filePath = System.getProperty("user.dir") + "/src/main/resources/static/";

            File targetDir = new File(filePath);

            if (!targetDir.exists() && !targetDir.isDirectory()) {

                if (targetDir.mkdirs()) {

                    log.info("创建目录成功");

                } else {

                    log.error("创建目录失败");

                }

            }

            String fileName = file.getOriginalFilename();

            File dest = new File(filePath + fileName);

            log.info("文件路径:{}", dest.getPath());

            log.info("文件名:{}", dest.getName());

            file.transferTo(dest);

            JSONObject jsonObject = new JSONObject();

            jsonObject.put("url", "/api/upload/" + fileName);

            return success(jsonObject);

        } catch (IOException e) {

            log.info("上传失败:{}", e.getMessage());

        }

        return error(30000, "上传失败");

    }

5.3.4资源管理界面

当管理员点击“资源管理”这一菜单时,可查看行业资讯、资讯分类,以及考试题库这三个子菜单,在行业资讯和资讯分类模块中,可新增、编辑、删除行业资讯内容信息,对行业资讯进行分类,并可管控行业资讯的评论内容;如需对考试资源进行增改删查操作,可点击“考试题库”这一子菜单,同时该模块还提供题库、答题、评分(客观题自动评分,主观题管理员手动评分)等功能,方便管理员发布试题,构建考试题库,在线测试试题,并对用户提交的试卷进行评分。

例如,资源管理行业资讯界面设计如下图所示。

图5.13资源管理行业资讯界面设计

例如,资源管理考试试题界面设计如下图所示。

图5.14资源管理考试试题界面设计

考试试题评分关键代码:

  @PostMapping("/set")

@Transactional

    public Map<String, Object> set(HttpServletRequest request) throws IOException {

        service.update(service.readQuery(request), service.readConfig(request), service.readBody(request.getReader()));

        return success(1);

    }

6  系统测试

6.1测试目的

在软件开发生命周期中,系统测试占据着举足轻重的地位。通过进行全面而系统的测试,我们能够确保软件在实际使用环境中具备稳定运行的能力,从而满足用户的多样化需求,并显著提升软件的整体质量与可靠性。这一过程不仅有助于识别并修复潜在问题,还能为软件的持续优化提供有力支撑。

随着现代信息的快速发展,在社会各大领域中已经都开始应用网络信息技术,在应用网络技术的同时人们也开始把软件的质量问题作为了一个重要焦点来关注,因为一个软件的好与坏它决定着这个系统在市场上的生存,所以我们必须要把软件质量来做好,这样才有一定的生存能力。对于用户来说它们首先选用的都是保证这个系统软件的质量问题,因为一个系统的软件质量决定着用户在后期上成本经济的问题。图6-1就是纠错测试流程。

图6.1测试与纠错信息流程

6.2测试用例

在系统的功能验证阶段,我们将对全部的功能界面进行全面测试。具体而言,我们将模拟用户行为,输入各类数据并进行提交操作,随后仔细观察和分析每个页面的响应反馈。这一过程旨在验证系统的功能完整性,确保页面所呈现的功能与预期相符,并能够完全实现预设的交互逻辑。通过这种全面细致的测试方法,我们将确保系统在实际应用中能够稳定、准确地响应用户需求。

下表是系统登录功能测试用例,检测了用户名和密码的不同的输入情况,观察系统的响应情况。得出该功能达到了设计目标。

表6.1系统登录功能测试用例

功能描述

用于系统登录

测试目的

检测登录时的合法性检查

测试数据以及操作

预期结果

实际结果

输入的用户名和密码带有非法字符

提示用户名或者密码错误

与预期结果一致

输入的用户名或者密码为空

提示用户名或者密码错误

与预期结果一致

输入的用户名和密码不存在

提示用户名或者密码错误

与预期结果一致

输入正确的用户名和密码

登录成功

与预期结果一致

下表是注册功能测试用例,检测了各种数据的输入情况,观察系统的响应情况。得出该功能达到了设计目标。

表6.2注册功能测试用例

功能描述

用于用户注册

测试目的

检测用户注册时的合法性检查

测试数据以及操作

预期结果

实际结果

输入的手机号不合法

提示请输入正确的手机号码

与预期结果一致

输入的字段为空

提示必填项不能为空

与预期结果一致

输入的密码少于6位

提示密码必须为6-12位

与预期结果一致

输入的密码大于12位

提示密码必须为6-12位

与预期结果一致

下表是课程资料管理功能的测试用例,检测了课程资料中对课程资料的增加,删除,修改,查询操作是否成功运行。观察系统的响应情况,得出该功能也达到了设计目标,系统运行正确。

前置条件;管理员登录系统。

表6.3课程资料管理的测试用例

功能描述

用于课程资料

测试目的

检测课程资料时的各种操作的运行情况

测试数据以及操作

预期结果

实际结果

点击添加课程资料,必填项合法输入,点击保存

提示添加成功

与预期结果一致

点击添加课程资料,必填项输入不合法,点击保存

提示必填项不能为空

与预期结果一致

点击修改课程资料,必填项修改为空,点击保存

提示必填项不能为空

与预期结果一致

点击修改课程资料,必填项输入不合法,点击保存

提示必填项不能为空

与预期结果一致

点击删除课程资料,选择课程资料删除

提示删除成功

与预期结果一致

点击搜索课程资料,输入存在的课程资料名

查找出相应课程资料信息

与预期结果一致

点击搜索课程资料,输入不存在的课程资料名

不显示课程资料信息

与预期结果一致

下表是学习笔记管理功能的测试用例,检测了学习笔记中对学习笔记的增加,删除,修改,查询操作是否成功运行。观察系统的响应情况,得出该功能也达到了设计目标,系统运行正确。

前置条件;管理员登录系统。

表6.4学习笔记管理的测试用例

功能描述

用于学习笔记

测试目的

检测学习笔记时的各种操作的运行情况

测试数据以及操作

预期结果

实际结果

点击添加学习笔记,必填项合法输入,点击保存

提示添加成功

与预期结果一致

点击添加学习笔记,必填项输入不合法,点击保存

提示必填项不能为空

与预期结果一致

点击修改学习笔记,必填项修改为空,点击保存

提示必填项不能为空

与预期结果一致

点击修改学习笔记,必填项输入不合法,点击保存

提示必填项不能为空

与预期结果一致

点击删除学习笔记,选择学习笔记删除

提示删除成功

与预期结果一致

点击搜索学习笔记,输入存在的学习笔记名

查找出相应学习笔记信息

与预期结果一致

点击搜索学习笔记,输入不存在的学习笔记名

不显示学习笔记信息

与预期结果一致

下表是行业资讯管理功能的测试用例,检测了行业资讯中对行业资讯的增加,删除,修改,查询操作是否成功运行。观察系统的响应情况,得出该功能也达到了设计目标,系统运行正确。

前置条件;管理员登录系统。

表6.5行业资讯管理的测试用例

功能描述

用于行业资讯

测试目的

检测行业资讯时的各种操作的运行情况

测试数据以及操作

预期结果

实际结果

点击添加行业资讯,必填项合法输入,点击保存

提示添加成功

与预期结果一致

点击添加行业资讯,必填项输入不合法,点击保存

提示必填项不能为空

与预期结果一致

点击修改行业资讯,必填项修改为空,点击保存

提示必填项不能为空

与预期结果一致

点击修改行业资讯,必填项输入不合法,点击保存

提示必填项不能为空

与预期结果一致

点击删除行业资讯,选择行业资讯删除

提示删除成功

与预期结果一致

点击搜索行业资讯,输入存在的行业资讯名

查找出相应行业资讯信息

与预期结果一致

点击搜索行业资讯,输入不存在的行业资讯名

不显示行业资讯信息

与预期结果一致

下表是考试题库管理功能的测试用例,检测了考试题库中对考试题库的增加,删除,修改,查询操作是否成功运行。观察系统的响应情况,得出该功能也达到了设计目标,系统运行正确。

前置条件;管理员登录系统。

表6.6考试题库管理的测试用例

功能描述

用于考试题库

测试目的

检测考试题库时的各种操作的运行情况

测试数据以及操作

预期结果

实际结果

点击添加考试题库,必填项合法输入,点击保存

提示添加成功

与预期结果一致

点击添加考试题库,必填项输入不合法,点击保存

提示必填项不能为空

与预期结果一致

点击修改考试题库,必填项修改为空,点击保存

提示必填项不能为空

与预期结果一致

点击修改考试题库,必填项输入不合法,点击保存

提示必填项不能为空

与预期结果一致

点击删除考试题库,选择考试题库删除

提示删除成功

与预期结果一致

点击搜索考试题库,输入存在的考试题库名

查找出相应考试题库信息

与预期结果一致

点击搜索考试题库,输入不存在的考试题库名

不显示考试题库信息

与预期结果一致

6.3测试分析

本“星火薪火”资源平台开发与设计满足相关信息的管理需求,在设计时借鉴了国内外优秀网站的优点,从界面到系统设计都保证了管理员以及用户能够方便操作。系统的主要特点和优点归纳如下:

(1)本系统用的移置性和针对性都比较高,因为针对性高可以提供更好的服务而移置性可以在多个系统上运行,更给用户带来了极大的方便。

(2)该“星火薪火”资源平台开发与设计内容全面,管理方便可以及时的全面的处理各种错误,异常,这样避免了很多因用户的马虎操作而出现的失误,其操作方便,用户界面友好,能够上网的人都可以很好的进行操作。

经过对上述的测试结果分析,所有基本功能齐全,操作简单,系统运行性能良好,系统安全可靠,能促进“星火薪火”资源平台的发展,发展前景广阔。

7  结束语

通过开发“星火薪火”资源平台,我深刻体会到软件开发的完整流程。首先,在确定开发目标后,我进行了详细的需求分析,明确了系统所需的各项功能。接下来,我设计了系统的功能框架和数据库结构,包括实体和数据表的设计。随后,我实现了各个功能模块的详细界面,并进行了全面的功能测试。尽管在这个过程中遇到了各种挑战,但通过反复分析和深入思考,借助相关文献和解决方案,我成功地解决了这些问题,最终使“星火薪火”资源平台顺利运行。

虽然该系统在功能上基本满足了用户的需求,但仍有许多需要改进的地方。在接下来的开发阶段,我计划进行以下改进:

用户界面设计:目前的操作页面虽然满足了简易操作的要求,但在多样化设计方面还有提升空间。我将考虑引入更多丰富的设计元素,使界面更加美观和用户友好。

安全性能优化:针对系统安全性能的增强,需要进一步优化系统的整体防护能力。具体而言,将要对程序退出的安全性进行加强,确保在退出过程中不存在数据泄露或系统不稳定的风险。同时,对系统的并发处理能力进行升级,以确保在高并发场景下系统能够保持稳定的运行状态。这些改进措施将共同提升系统的安全性能,确保在各种使用场景下,系统都能为用户提供安全、可靠的服务。

性能优化:在性能优化方面,将着重于对程序的数据结构和代码逻辑进行精细化调整。通过优化,旨在确保系统能在高负载下保持稳定且高效的运行状态。优化后的系统应具备快速处理大量事务的能力,显著缩短事务处理时间,从而提高整体工作效率。同时,致力于降低服务器资源的占用率,以实现资源的高效利用和成本的有效控制。这些优化措施将共同提升系统的整体性能,为用户提供更加流畅、高效的服务体验。

通过这些改进,我希望能够进一步提升“星火薪火”资源平台的用户体验和性能,使其更加贴合实际需求。

参考文献

[1]曾泽润.基于Android的微信小程序移动学习平台设计[J].信息记录材料,2024,25(07):62-64.DOI:10.16009/j.cnki.cn13-1295/tq.2024.07.035.

[2]陈蓓蕾,洪年松.基于SpringBoot的数据库接口设计[J].信息与电脑(理论版),2023,35(16):181-183.

[3]丁晓进,朱晓荣.基于微信小程序的云计算学习平台开发[J].软件导刊,2023,22(09):108-112.

[4]王莹莹,刘新静.基于云平台的数学线上学习资源共享系统研究[J].信息与电脑(理论版),2023,35(08):234-236.

[5]雷少玲.基于微信小程序的学习平台设计案例分析[J].集成电路应用,2023,40(03):164-165.DOI:10.19339/j.issn.1674-2583.2023.03.071.

[6]王琪.SpringBoot在线学习系统的开发[J].互联网周刊,2023,(05):60-62.

[7]侯艳春.基于互联网数据的英语学习资源共享系统[J].信息技术,2023,47(02):129-133+139.DOI:10.13274/j.cnki.hdzj.2023.02.024.

[8]刘鹏.基于SpringBoot的在线学习系统与用户画像构建[J].无线互联科技,2023,20(04):136-138.

[9]Rong Z ,Kexin L ,Qian Z .Design and Development of Course Teaching Assistant System Based on WeChat Applet:Taking the Basic Courses of Communication Engineering Specialty as an Example[C]//[出版者不详],2023:

[10]张勇飞,陈艳君.基于微信小程序的线上学习平台设计[J].信息与电脑(理论版),2022,34(18):254-256.

[11]张欣.基于知识图谱的个性化学习微信小程序设计与开发[D].华中师范大学,2022.DOI:10.27159/d.cnki.ghzsu.2022.001946.

[12]李连天.基于微信小程序的携学资源共享平台研究与实现[J].电子技术与软件工程,2021,(21):6-7.

[13]袁芳,胡伟,彭健.基于微信小程序的动态网站设计移动学习平台的研究与设计[J].电脑知识与技术,2021,17(20):88-89.DOI:10.14004/j.cnki.ckt.2021.1980.

[14]刘超慧,杨雨涵,邢丹阳,等.基于SpringBoot的教学资源平台设计与实现[J].科技风,2021,(11):92-93.DOI:10.19392/j.cnki.1671-7341.202111044.

[15]文馨,朱思曼,廖香芝.基于微信小程序的学习平台研究[J].家庭科技,2021,(01):14-15.

[16]Chen G ,Xu J .Design and implementation of efficient Learning platform based on SpringBoot Framework[J].Journal of Electronics and Information Science,2020,6(1):

[17]柴媛媛,孟陈然.基于微信小程序的移动学习与评测系统开发[J].教育教学论坛,2020,(44):301-302.

[18]杨萌,张达正.基于云计算的学习资源共享平台的设计与实现[J].鞍山师范学院学报,2020,22(04):45-48+53.

[19]赵明文,闾枫.基于SpringBoot的高校学习社区的设计与实现[J].电子测试,2020,(13):92-93+129.DOI:10.16520/j.cnki.1000-8519.2020.13.035.

[20]He F .Application research of mixed teaching mode based on Wechat applet[J].Journal of Physics Conference Series,2020,1486(3):032006.

致  谢

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

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

最后,我要感谢我的家人和同学们。感谢父母在物质与精神上给予我无限的支持和鼓励。感谢我的同学们,在论文写作期间,你们给予了我许多宝贵的建议和帮助,让我在学术研究的道路上不再孤单。

再次感谢所有在我大学生活中给予我帮助和支持的人们。您们的关怀和鼓励将永远铭刻在我的心中,成为我未来前行的动力。

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

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

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值