可白嫖源码--- 校园选修课程管理系统 14517 (案例分析)-附源码

目  录

摘要

1 绪论

1.1 研究背景与意义

1.2 国内外研究现状

1.3论文组织结构

2 相关技术介绍

2.1  Java语言

2.2  Spring Boot框架

2.3  HTML前端技术

2.4  B/S结构

2.5  MySQL数据库

3 系统分析

3.1 可行性分析

3.1.1 技术可行性分析

3.1.2 经济可行性分析

3.1.3 操作可行性分析

3.2 系统功能分析

3.2.1 功能性需求分析

3.2.2 非功能性分析

3.3 系统用例分析

3.4 系统业流程分析

4 校园选修课程管理系统总体设计

4.1 系统架构设计

4.2 系统总体功能模块设计

4.3 数据库设计

4.3.1 数据库概念结构设计

4.3.2 数据库逻辑结构设计

5 校园选修课程管理系统详细设计与实现

5.1前台用户功能模块

5.1.1 前台首页界面

5.1.2 用户注册界面

5.1.3 用户登录界面

5.1.4 课程资讯界面

5.1.5 学院信息界面

5.1.6课程信息界面

5.1.7个人中心界面

5.2后台管理员功能模块

5.2.1后台登录界面

5.2.2系统用户界面

5.2.3 学院信息管理界面

5.2.4系统管理界面

5.2.5资源管理界面

5.3教师用户功能模块

5.3.1课程信息管理界面

5.3.1选修记录管理界面

6系统测试

6.1 测试目的

6.2 功能测试

6.3 性能测试

6.4 测试结果

结论

参考文献

致  谢

摘要

随着高校教育信息化的快速发展,教务管理系统的建设成为提升教学效率和管理水平的重要手段。本文旨在设计并实现一个基于Spring Boot的校园选修课程管理系统,以解决现有系统中的不足问题。通过整合现代化技术框架,构建一个功能全面、操作便捷且性能稳定的教务管理平台,为学生、教师和管理员提供高效的服务支持。

系统采用Spring Boot作为后端开发框架,结合Java语言实现业务逻辑,并使用MySQL数据库进行数据存储与管理。系统主要实现了三大角色的功能:学生用户可完成查看课程信息、学院信息、专业信息、校园资讯等操作;教师用户负责课程信息添加、课程成绩反馈、课程通知、选修记录管理等工作;管理员则对系统整体进行维护与管理,包括用户权限控制、公告发布及资源管理等功能。

本系统的成功开发与应用具有重要的价值意义。一方面,它显著提升了学生仔选修课程管理上的智能化运用,减少了人工干预,降低了管理成提高效率本;另一方面,通过优化用户体验和增强信息透明度,可以促进师生之间的沟通与协作。

关键词:Java;Spring Boot框架;校园选修课程管理系统;MySQL。

Abstract

With the rapid development of informatization of university education, the construction of educational affairs management system has become an important means to improve teaching efficiency and management level. The purpose of this paper is to design and implement a Spring Boot-based campus elective course management system to solve the shortcomings of the existing system. By integrating modern technology frameworks, we build a comprehensive, easy-to-use and stable academic administration management platform to provide efficient service support for students, teachers and administrators.

The system uses Spring Boot as the back-end development framework, combines Java language to implement business logic, and uses MySQL database for data storage and management. The system mainly realizes the functions of three major roles: student users can complete operations such as viewing course information, college information, professional information, and campus information; Teacher users are responsible for adding course information, feedback on course grades, course notifications, and managing elective records. The administrator maintains and manages the system as a whole, including user rights control, announcement release, resource management and other functions.

The successful development and application of this system is of great value. On the one hand, it significantly improves the intelligent application of student elective course management, reduces manual intervention, and reduces management efficiency costs. On the other hand, by optimizing the user experience and enhancing information transparency, communication and collaboration between teachers and students can be facilitated.

Keywords: Java;Spring Boot framework; Campus Elective Course Management System; MySQL.

1 绪论

1.1 研究背景与意义

随着高等教育的普及和学生个性化需求的增长,传统的校园选修课程管理模式面临着越来越多的挑战[1]。过去,选修课程的管理通常依赖于纸质表格、人工登记以及简单的电子表格处理,这种方法不仅效率低下,而且容易出错。此外,学生在选择课程时往往面临信息不对称的问题,难以全面了解所有可选课程的具体内容、授课教师评价以及课程安排等关键信息。对于教育管理者而言,如何高效地进行课程规划、资源分配及教学质量监控也成为一个亟待解决的问题。

近年来,随着信息技术特别是互联网技术的发展,在线管理系统逐渐成为提升教学管理效率和服务质量的重要工具。基于Web的应用程序能够提供一个集中的平台,使得学生可以方便地浏览课程信息、提交选课申请,并实时跟踪选课状态;教师则可以通过该系统发布课程资料、管理学生名单及成绩;而管理人员能够更加高效地进行课程调度、资源分配以及数据分析。Spring Boot作为一种流行的Java开发框架,以其简洁配置、快速开发的特点,非常适合用于构建这样的管理系统,为高校提供了一种灵活且高效的解决方案。

通过在线选修课程管理系统,学生可以随时随地访问最新的课程信息,根据自己的兴趣和学术需求做出最佳选择。系统自动化的流程减少了人为错误的可能性,同时也大大缩短了选课周期。系统可以帮助学校更好地规划课程安排,确保教室、实验室及其他教学资源得到最有效的利用。同时,通过对选课数据的分析,管理者可以及时调整课程设置,满足更多学生的需求。本研究探索了如何利用现代Web技术(如Spring Boot)来构建一个全面的校园选修课程管理系统[2],为教育行业的数字化转型提供了新思路和新模式。这不仅有助于当前选修课程管理的优化,也为未来智慧校园建设奠定了基础。

所以研究校园选修课程管理系统它不仅能有效解决传统选课过程中存在的各种问题,还能促进教育资源的优化配置和高效利用,具有重要的现实意义和社会价值。通过不断的技术创新和完善,这样的系统有望成为推动教育现代化进程的关键力量。

1.2 国内外研究现状

在国内,随着教育信息化的推进和互联网技术的发展,在线课程管理系统在高校中的应用越来越广泛。许多高校和科研机构已经开始探索并实施基于现代Web框架[4](如Spring Boot)的校园选修课程管理系统,旨在提升教学管理效率和服务质量。一些知名高校已经开始构建自己的在线选课平台[3],并且这些平台通常集成了多种功能模块,包括但不限于课程信息展示、学生选课、教师课程管理以及成绩录入等。例如,清华大学、北京大学等高等学府已经开发了较为成熟的在线选课系统,不仅提高了选课效率,还增强了用户体验。第二在技术上,国内研究人员积极探索如何利用先进的技术手段来优化校园选修课程管理系统。比如,通过大数据分析技术对学生选课行为进行深入分析,以更好地理解学生需求;利用云计算技术提高系统的可扩展性和稳定性;使用人工智能算法为学生提供个性化的课程推荐服务等。同时考虑到中国高等教育体系的独特性,部分系统特别注重适应国内的教学模式和评价标准。例如,在课程设置、考试安排等方面进行定制化设计,确保系统能够更好地服务于本土教育需求[5]。同时,针对不同地区、不同层次学校的实际情况,系统往往需要具备一定的灵活性和可配置性。现国内对于校园选修课程研究上无论是从技术创新还是实际应用角度来看,都显示出巨大的潜力和发展空间。

国外的研究和实践特别注重根据学生的学习习惯、兴趣爱好及学术需求提供个性化的课程推荐和服务[6]。例如,通过数据分析和机器学习算法,系统能够自动为学生推荐最适合他们的选修课程,帮助他们更好地规划学业生涯。其二许多国外高校和教育机构利用大数据技术对学生的选课行为、学习成绩等数据进行深入分析,以支持教学管理和决策制定。比如,通过分析选课趋势预测未来课程的需求量[7],或者评估不同教学方法对学生表现的影响,从而调整教学策略。除了技术手段外,国外的研究还强调如何通过增加系统运作的透明度来建立用户信任。例如,公开数据使用政策、允许用户查看并控制自己的数据访问权限等做法,有助于消除用户的顾虑,增强其对系统的信赖感。再者国外的研究往往强调跨学科的合作,将教育学、心理学、计算机科学等多个领域的知识和技术结合起来,共同探讨如何优化选课管理系统的设计与实现。这种多学科交叉的研究方法有助于从不同角度理解学习过程中的复杂因素,并提出更加有效的解决方案[8]。

综上所述,无论是国内还是国外,在线学习效果评价系统都在不断创新和完善中。这些经验和做法为基于Spring Boot校园选修课程管理系统的设计与实现提供了宝贵的参考依据。通过借鉴国内外的成功经验和技术手段,可以构建一个既符合国情又具有国际视野的高效学习效果评价系统。

1.3论文组织结构

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

第一章:引言。第一章主要介绍了课题研究的背景和意义,系统开发的国内外研究现状和本文的研究内容与主要工作,以及相关开发技术与工具介绍。

第二章:相关技术介绍。主要对本系统使用的相关技术和开发环境进行介绍。

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

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

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

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

第七章:总结。

2 相关技术介绍

2.1  Java语言 

Java是一种跨平台的高级编程语言[9],具有广泛应用于各个领域的优势。它拥有简单易学、可靠稳定、安全性强和良好的性能等特点。在校园选修课程管理系统中,Java将作为主要的后端编程语言来实现系统的核心功能。通过使用Java,我们可以实现数据的处理、业务逻辑的编写以及与前端界面的交互。同时,Java还提供了丰富的类库和开发工具,方便开发人员进行系统设计和开发。

2.2  Spring Boot框架

Spring Boot[10],作为Spring生态系统中一颗璀璨的明星,以其“约定优于配置”的核心理念,极大地简化了Java应用的开发、部署与管理流程。它并非是对Spring框架的颠覆,而是在其基础上进行了深度封装与优化,旨在快速搭建独立的、生产级别的Spring应用。Spring Boot通过自动配置功能,减少了大量繁琐的配置工作,让开发者能够更加专注于业务逻辑的实现。同时,它集成了众多常用库,如数据库连接池、缓存、消息队列等,为开发者提供了一站式的解决方案。此外,Spring Boot还支持多种部署方式,无论是传统的WAR包部署,还是现代的容器化部署,都能轻松应对。因此,选择Spring Boot作为度假管理系统的开发框架,不仅能够提升开发效率,还能确保系统的稳定性和可维护性。

2.3  HTML前端技术

HTML(超文本标记语言)是构建WEB页面的标准标记语言。它用于定义网页的结构和内容,通过标签(tag)来描述文本、图像、链接等元素。结合CSS和JavaScript,HTML可以实现丰富的用户界面和交互效果,是WEB前端开发的基础。

2.4  B/S结构

B/S(Browser/Server)结构是一种用于WEB应用程序的架构模式,用户通过浏览器与服务器进行交互。与传统的C/S(Client/Server)架构相比,B/S结构具有更好的普适性和简便性,用户无需安装客户端软件,只需通过浏览器即可访问应用,降低了维护和升级的成本。

2.5  MySQL数据库

MySQL数据库[11],作为开源关系型数据库管理系统的佼佼者,以其高性能、可靠性、易用性和灵活性,在全球范围内被广泛应用于各类企业级应用中。MySQL采用SQL(结构化查询语言)作为数据操作的标准语言,支持复杂的查询、数据更新、索引优化等功能,确保数据的高效存取和完整性。其强大的事务处理能力,为业务逻辑的原子性、一致性、隔离性和持久性提供了坚实保障。此外,MySQL还具备高度的可配置性和可扩展性,通过优化存储引擎、调整配置参数等手段,可以轻松应对高并发、大数据量的应用场景。在校园选修课程管理系统中,MySQL作为后端数据存储的核心,不仅为系统提供了稳定可靠的数据支持,还通过其丰富的数据操作功能,助力系统实现复杂的业务逻辑和高效的数据管理。

3 系统分析

3.1 可行性分析

可行性分析是系统分析的第一步,进行系统的可行性分析是至关重要的。它不仅帮助我们评估项目的潜在风险和挑战,还能确保资源的有效利用,避免不必要的浪费。通过技术、经济和社会三个维度的全面分析,我们可以明确项目的实施路径,确定是否具备成功的基础条件,并为后续的开发和运营提供科学依据。这种系统化的评估有助于识别可能的瓶颈,提前制定应对策略,从而提高项目的成功率和可持续性。

3.1.1 技术可行性分析

从技术角度来看,本系统基于Spring Boot框架构建,结合现代前端技术和数据库管理,能够有效支持高校教务管理的各项功能需求。Spring Boot提供了强大的架构支持,确保系统的可扩展性和稳定性。通过充分的技术调研和原型测试,我们确认现有的技术栈完全能够满足系统的开发和运行要求,具备较高的技术可行性。

3.1.2 经济可行性分析

从经济角度考量,本系统的开发和维护成本在可控范围内,且预期的投资回报率较高。初期投入主要包括软件开发、硬件采购和人员培训等方面,但通过合理的预算规划和资源分配,可以有效控制成本。更重要的是,系统上线后将显著提升高校课程信息的运营效率,减少人工干预,降低管理成本。

3.1.3 操作可行性分析

在操作可行性方面,本系统设计注重用户体验,采用了直观易用的界面设计,并提供详细的帮助文档支持,确保用户可以轻松上手使用各项功能。无论是用户还是管理员,都能通过简洁明了的操作流程完成信息查询和管理等任务。因此,从用户操作的角度来看,本系统具备良好的操作可行性。

3.2 系统功能分析

3.2.1 功能性需求分析

本系统的功能性需求主要围绕学生用户、教师用户和管理员三大角色展开,旨在提供校园选修课程管理系统服务。系统涵盖了问卷调查、公告通知、课程信息、专业信息、学院信息等功能模块,通过明确各角色权限和职责,确保学校选修系统工作的高效运行,同时满足不同用户群体的具体需求。具体功能描述如下:

(1)学生用户模块:

注册登录:学生进入系统需要注册账号密码登录,学生姓名、账号、昵称、邮箱学生学号等信息进行注册。

首页:展示校园公告、课程资讯及个人日程提醒,帮助学生快速获取重要信息。支持个性化推荐相关内容,提升用户体验。

问卷调查:学生进入问卷带调查可以进行答题,关于计算机基础考试、大学语文等在线测试,然后提交查询分数。

通知公告:查看系统发布的最新公告和通知,确保用户及时了解重要信息,可以进行点赞收藏和评论操作。

课程资讯:学生可以实时查看学校发布的各类动态课程信息,确保信息传递及时准确。支持按分类筛选和搜索功能,可以进行点赞收藏和评论操作。

学院信息:学生可以按搜索类别查询学院信息,包括学院名称、学院地点、学分限制学院介绍等信息,可以进行点赞收藏和评论操作。

专业信息:学生可以按搜索类别查询专业信息,包括专业系名、所在学院、具体位置、专业介绍等信息,可以进行点赞收藏和评论操作。

课程信息:查询详细课程信息,包括教师用户、课程名称、课程类别、课程地点、性别要求、课程介绍等详情,可以进行点赞收藏和评论操作。

个人中心:显示用户的个人基本信息和使用数据概览,查看个人首页、选修记录、课程成绩、课程反馈、课程通知、收藏和评论管理等功能模块;可以在“课程成绩”查询自己的练习测试;在“课程反馈”里查看老师给予的回复内容;在“收藏”可以查看自己收藏国的所有内容,也可以进行删除等操作。

(2)教师用户模块:

首页:展示课程信息、轮播图、支持个性化设置以优化界面布局。

课程信息管理:教师用户管理课程信息列表及信息添加,包括课程名称、课程时长、学科类别、课程年纪、性别要求、选课建议、课程介绍等详情,然后需要管理员审核后上传。

选修记录管理:教师管理选修记录列表详情进行审核回复。

课程成绩管理:教师管理课程成绩列表信息,进行审核上传成绩。

课程反馈管理:教师管理审核学生课程反馈信息列表。

课程通知管理:选修完后,教师查询选修记录列表,回复通知上课内容等信息。

(3)管理员管理模块:

后台首页:集中展示全局日程安排,便于管理员统筹协调各项工作。支持添加和编辑全局事件。

系统用户:管理学生、教师和管理员账号信息,包括新增、修改和删除操作,其中教师用户由管理员后台添加。

学院信息管理:管理课程信息列表及添加,包括学院名称、学院地点、学院简介等所有列表信息,可以进行增删改查操作。

专业信息管理:管理专业信息列表及添加内容,包括专业系名、所在学院、具体位置、专业介绍等信息,可以进行增删改查操作。

课程信息管理:管理员可以查看所有课程信息,对教师用户添加的课程信息进行审核。

学科类别管理:管理添加学科类别详情,可以进行增删改查操作。

选修记录管理:管理查看选修记录所有列表信息,可以进行增删改查操作。

课程成绩管理:管理查看课程成绩所有列表信息,可以进行增删改查操作。

课程通知管理:管理查看课程通知所有列表信息,可以进行增删改查操作。

系统管理:管理首页轮播图内容,提升系统视觉效果。支持图片上传和排序功能。

通知公告管理:发布校园公告信息,确保重要通知及时传达。支持按分类管理功能。

资源管理:管理课程资讯及其分类信息,丰富系统内容。支持新增、修改和删除操作。

3.2.2 非功能性分析

校园选修课程管理系统的设计与实现需要具备性能、可靠性、安全性、可用性、扩展性等非功能性特征。系统应在长时间运行中保持稳定,用户界面简洁直观;具备高效的数据处理和响应速度;采取安全措施保护用户信息;根据用户反馈调整推荐算法;方便用户进行课程信息和考试信息搜索和排序;易于维护和管理,支持与其他系统互操作。设计和开发过程中需注重这些要求,以提供高质量、用户友好和可信赖的系统体验。具体如下3-1表格:

3-1校园选修课程管理系统的设计与实现系统非功能需求表

非功能性要求

说明

性能

评估响应时间、并发用户数、吞吐量等指标,以确保系统稳定高效地运行。

可靠性

评估系统的稳定性、容错能力和数据完整性,保障系统在故障情况下正常运行。

安全性

评估用户身份认证、数据加密和访问控制等,保护用户信息和交易的安全。

可用性

评估系统的稳定性、故障处理能力和用户界面友好性,提供良好的用户体验。

扩展性

评估系统的可扩展性和灵活性,以便根据需求进行功能扩展和升级。

3.3 系统用例分析

系统用例分析是对校园选修课程管理系统中各个功能模块的用户需求和行为进行分析,以识别和描述不同的用户用例。通过系统用例分析,可以深入了解用户在系统上的操作流程和交互方式,为系统设计和开发提供指导,并确保系统能够满足用户的需求和期望。

学生用户用例图如图3-1所示。

图3-1 学生用户角色用例图

教师用户用例图如图3-2所示。

图3-2 教师用户角色用例图

管理员角色用例图如图3-3所示。

图3-3 管理员角色用例图

3.4 系统业流程分析

校园选修课程管理系统须支撑整个机构不同层面的多种职能,而各功能模块间存在着多种关联信息,组成一个有机整体,并针对就业数据自身特点和面临的现实条件,对系统进行流程图设计。活动图是一种用于对系统的动态行为建模的另一种常用图表,通常用于可视化展示系统中各个活动的执行顺序、流程控制和数据交互,展现从一个活动到另一个活动的控制流,活动图在本质上是一种流程图;但活动图着重表现从一个活动到另一个活动的控制流。因此,这里列举了2个业务活动图。

(1)用户登录查询的业务流程如下。

用户注册登录,系统从数据库获取用户数据信息,登录成功用户进入查询页面,用户输入查询关键字,数据库查询用户所输入的关键字,查询成功显示查询的模块信息,查询失败不显示。用户登录查询功能的活动图如图3-4所示。

图3-4 用户登录查询活动图

(2)管理员添加信息的业务流程如下。

此活动图描述了管理员添加信息。管理员可以通过信息管理模块页面选择要添加的基本信息。添加成功传入数据库中,失败则不添加。管理员可以保存信息并更新系统中的信息。管理员添加信息功能的活动图如图3-5所示。

图3-5 管理员添加信息活动图

4 校园选修课程管理系统总体设计

4.1 系统架构设计

从技术角度来看,校园选修课程管理系统的架构设计至关重要。我们将采用MVC架构,包括表现层、业务逻辑层和数据访问层。表现层负责用户界面展示,业务逻辑层处理核心功能逻辑,数据访问层负责数据库交互。通过三层架构模式,确保系统的可靠性和可扩展性。

系统架构图如图4-1所示。

图4-1 系统架构图

4.2 系统总体功能模块设计

通过整体功能模块设计,我们将根据需求分析的结果,将系统的功能划分为不同的模块。每个模块负责实现特定的功能,并与其他模块进行协作。我们将详细定义每个模块的输入、输出、处理逻辑和相互依赖关系。系统总体功能模块图如下图所示。

图4-2 校园选修课程管理系统功能模块图

4.3 数据库设计

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

4.3.1 数据库概念结构设计

校园选修课程管理系统的E-R图主要是根据普通用户以及管理员的实际需求设计的,用户注册以后可以查看课程反馈,只有注册登录以后才可以进行课程信息、收藏、评论等;管理员对整个系统的课程信息、作业信息、在线测试等进行综合管理。校园选修课程管理系统采用的是MYSQL的数据库进行存储的,数据库里面储存了很多的表信息,在此罗列出来一些主要的数据库E-R模型图。

图3-8 学生用户信息E-R关系图

图3-9 学院信息管理E-R关系图

图3-10课程信息管理E-R关系图

下面是整个校园选修课程管理系统中主要的数据库表总E-R实体关系图。

图4-3 校园选修课程管理系统总E-R关系图

4.3.2 数据库逻辑结构设计

数据库是校园选修课程管理系统的数据处理的基础,也是为界面数据的展示与存储的关键。校园选修课程管理系统的主要数据库表如下。

表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

parent

varchar

64

0

Y

N

父级菜单

8

parent_sort

int

10

0

N

N

0

父级菜单排序

9

position

varchar

32

0

Y

N

位置:

10

mode

varchar

32

0

N

N

_blank

跳转方式:

11

add

tinyint

3

0

N

N

1

是否可增加:

12

del

tinyint

3

0

N

N

1

是否可删除:

13

set

tinyint

3

0

N

N

1

是否可修改:

14

get

tinyint

3

0

N

N

1

是否可查看:

15

field_add

text

65535

0

Y

N

添加字段:

16

field_set

text

65535

0

Y

N

修改字段:

17

field_get

text

65535

0

Y

N

查询字段:

18

table_nav_name

varchar

500

0

Y

N

跨表导航名称:

19

table_nav

varchar

500

0

Y

N

跨表导航:

20

option

text

65535

0

Y

N

配置:

21

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

22

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表code_token

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

code_token_id

int

10

0

N

Y

2

token

varchar

255

0

Y

N

3

code

varchar

255

0

Y

N

验证码

4

expire_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

失效时间

5

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间

6

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

更新时间:

表college_information (学院信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

college_information_id

int

10

0

N

Y

学院信息ID

2

college_name

varchar

64

0

Y

N

学院名称

3

credit_limit

varchar

64

0

Y

N

学分限制

4

college_location

varchar

64

0

Y

N

学院地点

5

college_pictures

varchar

255

0

Y

N

学院图片

6

college_introduction

longtext

2147483647

0

Y

N

学院介绍

7

praise_len

int

10

0

N

N

0

点赞数

8

collect_len

int

10

0

N

N

0

收藏数

9

comment_len

int

10

0

N

N

0

评论数

10

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

11

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_feedback (课程反馈)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

course_feedback_id

int

10

0

N

Y

课程反馈ID

2

student_users

int

10

0

Y

N

0

学生用户

3

student_name

varchar

64

0

Y

N

学生姓名

4

student_major

varchar

64

0

Y

N

学生专业

5

student_gender

varchar

64

0

Y

N

学生性别

6

teacher_users

int

10

0

Y

N

0

教师用户

7

course_name

varchar

64

0

Y

N

课程名称

8

teachers_name

varchar

64

0

Y

N

教师姓名

9

subject_category

varchar

64

0

Y

N

学科类别

10

course_grade

varchar

64

0

Y

N

课程年级

11

feedback_remarks

text

65535

0

Y

N

反馈备注

12

examine_state

varchar

16

0

N

N

未审核

审核状态

13

examine_reply

varchar

16

0

Y

N

审核回复

14

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

15

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

16

source_table

varchar

255

0

Y

N

来源表

17

source_id

int

10

0

Y

N

来源ID

18

source_user_id

int

10

0

Y

N

来源用户

表course_grades (课程成绩)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

course_grades_id

int

10

0

N

Y

课程成绩ID

2

student_users

int

10

0

Y

N

0

学生用户

3

student_name

varchar

64

0

Y

N

学生姓名

4

student_major

varchar

64

0

Y

N

学生专业

5

student_gender

varchar

64

0

Y

N

学生性别

6

teacher_users

int

10

0

Y

N

0

教师用户

7

course_name

varchar

64

0

Y

N

课程名称

8

teachers_name

varchar

64

0

Y

N

教师姓名

9

subject_category

varchar

64

0

Y

N

学科类别

10

course_grade

varchar

64

0

Y

N

课程年级

11

course_grades

varchar

64

0

Y

N

课程成绩

12

score_ranking

varchar

64

0

Y

N

成绩排名

13

course_comments

text

65535

0

Y

N

课程评语

14

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

15

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

16

source_table

varchar

255

0

Y

N

来源表

17

source_id

int

10

0

Y

N

来源ID

18

source_user_id

int

10

0

Y

N

来源用户

表course_information (课程信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

course_information_id

int

10

0

N

Y

课程信息ID

2

teacher_users

int

10

0

Y

N

0

教师用户

3

course_name

varchar

64

0

N

N

课程名称

4

teachers_name

varchar

64

0

Y

N

教师姓名

5

subject_category

varchar

64

0

Y

N

学科类别

6

course_duration

varchar

64

0

Y

N

课程时长

7

course_grade

varchar

64

0

Y

N

课程年级

8

gender_requirements

varchar

64

0

Y

N

性别要求

9

class_location

varchar

64

0

Y

N

上课地点

10

class_time

datetime

19

0

Y

N

上课时间

11

remaining_personnel

double

9

2

Y

N

0.00

剩余人数

12

selected_number_of_people

double

9

2

Y

N

0.00

已选人数

13

course_selection_suggestions

text

65535

0

Y

N

选课建议

14

course_cover

varchar

255

0

Y

N

课程封面

15

course_introduction

longtext

2147483647

0

Y

N

课程介绍

16

hits

int

10

0

N

N

0

点击数

17

praise_len

int

10

0

N

N

0

点赞数

18

collect_len

int

10

0

N

N

0

收藏数

19

comment_len

int

10

0

N

N

0

评论数

20

examine_state

varchar

16

0

N

N

未审核

审核状态

21

recommend

int

10

0

N

N

0

智能推荐

22

elective_record_limit_times

int

10

0

N

N

0

选修课程限制次数

23

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

24

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表course_notice (课程通知)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

course_notice_id

int

10

0

N

Y

课程通知ID

2

student_users

int

10

0

Y

N

0

学生用户

3

student_name

varchar

64

0

Y

N

学生姓名

4

student_major

varchar

64

0

Y

N

学生专业

5

teacher_users

int

10

0

Y

N

0

教师用户

6

teachers_name

varchar

64

0

Y

N

教师姓名

7

course_name

varchar

64

0

Y

N

课程名称

8

subject_category

varchar

64

0

Y

N

学科类别

9

notification_content

text

65535

0

Y

N

通知内容

10

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

11

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

12

source_table

varchar

255

0

Y

N

来源表

13

source_id

int

10

0

Y

N

来源ID

14

source_user_id

int

10

0

Y

N

来源用户

表elective_record (选修记录)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

elective_record_id

int

10

0

N

Y

选修记录ID

2

student_users

int

10

0

Y

N

0

学生用户

3

student_name

varchar

64

0

Y

N

学生姓名

4

student_major

varchar

64

0

Y

N

学生专业

5

student_gender

varchar

64

0

Y

N

学生性别

6

class_information

varchar

64

0

Y

N

班级信息

7

teacher_users

int

10

0

Y

N

0

教师用户

8

course_name

varchar

64

0

Y

N

课程名称

9

teachers_name

varchar

64

0

Y

N

教师姓名

10

subject_category

varchar

64

0

Y

N

学科类别

11

course_grade

varchar

64

0

Y

N

课程年级

12

class_location

varchar

64

0

Y

N

上课地点

13

remaining_personnel

varchar

64

0

Y

N

剩余人数

14

number_of_elective_students

varchar

64

0

Y

N

选修人数

15

elective_status

varchar

64

0

Y

N

选修状态

16

elective_notes

text

65535

0

Y

N

选修备注

17

examine_state

varchar

16

0

N

N

未审核

审核状态

18

examine_reply

varchar

16

0

Y

N

审核回复

19

course_grades_limit_times

int

10

0

N

N

0

成绩排名限制次数

20

course_feedback_limit_times

int

10

0

N

N

0

课程反馈限制次数

21

course_notice_limit_times

int

10

0

N

N

0

课程通知限制次数

22

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

23

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

24

source_table

varchar

255

0

Y

N

来源表

25

source_id

int

10

0

Y

N

来源ID

26

source_user_id

int

10

0

Y

N

来源用户

表exam (考试)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

exam_id

mediumint

8

0

N

Y

考试id

2

name

varchar

32

0

N

N

考试名称:[2,32]

3

duration

int

10

0

Y

N

答题时长

4

score

double

9

2

Y

N

总分

5

status

varchar

10

0

Y

N

状态:启用、禁用

6

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

7

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表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

8

0

N

N

所属试卷

9

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

10

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已取消

表professional_information (专业信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

professional_information_id

int

10

0

N

Y

专业信息ID

2

professional_department_name

varchar

64

0

Y

N

专业系名

3

school_of_study

varchar

64

0

Y

N

所在学院

4

specific_location

varchar

64

0

Y

N

具体位置

5

cover_photo

varchar

255

0

Y

N

封面图片

6

professional_introduction

longtext

2147483647

0

Y

N

专业介绍

7

praise_len

int

10

0

N

N

0

点赞数

8

collect_len

int

10

0

N

N

0

收藏数

9

comment_len

int

10

0

N

N

0

评论数

10

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

11

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表schedule (日程管理)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

schedule_id

smallint

5

0

N

Y

日程ID:[0,32767]

2

content

varchar

255

0

Y

N

日程内容

3

scheduled_time

datetime

19

0

Y

N

计划时间

4

user_id

int

10

0

N

N

用户id

5

create_time

datetime

19

0

Y

N

创建时间

6

update_time

datetime

19

0

Y

N

更新时间

表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:

表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_mobile_phone

varchar

16

0

Y

N

学生手机

5

student_major

varchar

64

0

Y

N

学生专业

6

class_information

varchar

64

0

Y

N

班级信息

7

examine_state

varchar

16

0

N

N

已通过

审核状态

8

user_id

int

10

0

N

N

0

用户ID

9

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表subject_category (学科类别)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

subject_category_id

int

10

0

N

Y

学科类别ID

2

subject_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

更新时间

表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

teachers_phone_number

varchar

16

0

Y

N

教师电话

5

subject_category

varchar

64

0

Y

N

学科类别

6

teacher_title

varchar

64

0

Y

N

教师职称

7

examine_state

varchar

16

0

N

N

已通过

审核状态

8

user_id

int

10

0

N

N

0

用户ID

9

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

10

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

int

10

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

创建时间:

表user_answer (用户答题)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

user_answer_id

mediumint

8

0

N

Y

2

user_id

mediumint

7

0

N

N

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

3

exam_id

mediumint

8

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

评语

表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

更新时间:

5 校园选修课程管理系统详细设计与实现

校园选修课程管理系统的详细设计与实现主要是根据前面的校园选修课程管理系统的需求分析和校园选修课程管理系统的总体设计来设计页面并实现业务逻辑。主要从校园选修课程管理系统界面实现、业务逻辑实现这两部分进行介绍。

5.1前台用户功能模块

5.1.1 前台首页界面

前台首页界面是用户访问系统的入口页面,它应该展示平台的主要功能和特色,并提供导航链接以便用户浏览和搜索。首页界面的设计应注重页面的美观性和用户体验,同时也需要考虑页面的加载速度和响应性能。

首页载入流程图如下所示。

图5-1 首页载入流程图

系统首页实现效果如下图5-2所示。

图5-2 前台首页界面图

5.1.2 用户注册界面

用户注册界面是校园选修课程管理系统中的重要组成部分。该界面包含一个注册表单,其中用户需要填写用户名、密码、确认密码、电子邮箱、手机号码和标签选择等信息。为了确保安全性,还可以添加验证码字段。用户需要勾选同意系统的用户协议和隐私政策才能继续注册。注册过程中,系统应提供错误提示,及时指出输入信息的错误或不完整,并引导用户进行修正。通过这样的设计,用户可以方便地填写个人信息并完成注册,同时确保注册过程的安全和准确性。

注册流程图如下图5-3所示。

图5-3 注册流程图

用户注册界面展示如下图5-4所示。

图5-4注册界面图

注册关键代码如下:

    /**

     * 注册

     * @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.1.3 用户登录界面

校园选修课程管理系统中的前台上注册后的用户是可以通过自己的账户名和密码进行登录的,当用户输入完整的自己的账户名和密码信息并点击“登录”按钮后,将会首先验证输入的有没有空数据,再次验证输入的账户名、密码和数据库中当前保存的用户信息是否一致,只有在一致后将会登录成功并自动跳转到校园选修课程管理系统的首页中;否则将会提示相应错误信息。

登录流程图如下图所示。

图5-5登录流程图

用户登录界面如下图5-6所示。

图5-6用户登录界面图

登录代码如下:

     /**

     * 登录

     * @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.1.4 课程资讯界面

课程资讯模块汇集了最新的校园时事、精选文章和高校动态,按类型和时间进行分类展示。用户可以通过点赞、评论和分享功能与他人互动,同时支持关键词搜索以快速找到感兴趣的资讯内容。课程资讯界面如下图5-8所示。

图5-7课程资讯界面图

查询课程资讯列表的逻辑代码如下所示。

   @RequestMapping("/get_obj")

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

        List resultList = service.selectBaseList(service.select(service.readQuery(request), service.readConfig(request)));

        if (resultList.size() > 0) {

            JSONObject jsonObject = new JSONObject();

            jsonObject.put("obj",resultList.get(0));

            return success(jsonObject);

        } else {

            return success(null);

        }

    }

5.1.5 学院信息界面

学院信息:学生可以按搜索类别查询学院信息,包括学院名称、学院地点、学分限制学院介绍等信息,可以进行点赞收藏和评论操作。学院信息详情界面如下图所示。

图5-8学院信息详情界面图

5.1.6课程信息界面

课程信息:查询详细课程信息,包括教师用户、课程名称、课程类别、课程地点、性别要求、课程介绍等详情,可以进行点赞收藏和评论操作。课程信息界面如下图所示。

图5-9学生自我评价划界面图

5.1.7个人中心界面

个人中心模块为用户提供个性化的管理平台。学生用户个人中心模块是集中管理学习和账户相关信息的核心区域。在个人首页中,学生可以查看日程安排,查看个人首页、选修记录、课程成绩、课程反馈、课程通知、收藏和评论管理等功能模块;可以在“课程成绩”查询自己的练习测试;在“课程反馈”里查看老师给予的回复内容;在“收藏”可以查看自己收藏国的所有内容,也可以进行删除等操作。学生用户个人中心界面如下图所示。

图5-10学生用户个人中心界面图

5.2后台管理员功能模块

5.2.1后台登录界面

管理员通过后台登录模块验证身份后进入管理系统,该模块支持账号密码登录,并可选择记住登录状态或进行双因素认证以增强安全性。登录失败时提供错误提示,确保管理员账户的安全性。后台登录界面如下图5-16所示。

图5-12后台登录界面图

5.2.2系统用户界面

系统用户管理模块为管理员提供了全面的用户账户控制功能。管理员可以在此创建、编辑和删除用户账号,设置用户角色和权限,如学生用户、教师用户和管理员等。系统用户界面如下所示。

图5-13系统用户管理界面图

修改用户信息关键代码如下:

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

}

5.2.3 学院信息管理界面

学院信息管理:管理课程信息列表及添加,包括学院名称、学院地点、学院简介等所有列表信息,可以进行增删改查操作。学院信息管理界面如下所示。

图5-14学院信息管理界面图

5.2.4系统管理界面

系统管理模块负责维护系统的整体运行环境和用户体验。轮播图管理允许管理员上传和管理首页的轮播图片,展示重要信息或推广活动,增强视觉吸引力。该模块还支持设置图片的显示顺序和链接,确保内容的多样性和互动性。系统管理界面如下图5-19所示。

图5-19系统管理界面图

轮播图上传关键代码如下:

@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.2.5资源管理界面

资源管理模块专注于课程资讯及其分类的管理,支持新增、编辑和删除资讯内容,同时维护资讯分类体系。管理员可通过该模块保持资讯内容的多样性和时效性,提升用户体验。资源管理界面如下图5-20所示。

图5-20资源管理界面图

5.3教师用户功能模块

5.3.1课程信息管理界面

课程信息管理:教师用户管理课程信息列表及信息添加,包括课程名称、课程时长、学科类别、课程年纪、性别要求、选课建议、课程介绍等详情,然后需要管理员审核后上传。课程信息管理界面如下图5-20所示。

图5-20课程信息管理界面图

5.3.1选修记录管理界面

选修记录管理:教师管理选修记录列表详情进行审核回复。选修记录管理界面如下图5-20所示。

图5-20选修记录管理界面图

6系统测试

6.1 测试目的

在对该系统进行完详细设计和编码之后,就要对校园选修课程管理系统的程序进行测试,检测程序是否运行无误,反复进行测试和修改,使之最后成为完整的软件,满足用户的需求,实现预期的功能。系统测试的目的在于确保软件正常运作,并实现其应有的功能,促进行中出现的错误和逻辑问题。系统测试不但可以找见程序运行中的系统错误,还可以找见程序运行的需要改进的地方,并去协助改良程序运行使其获得最高幅度的完备。世界一流的安装测试员可以增加软件品质,将软件系统错误概率降至最少。

6.2 功能测试

本系统的主要功能就是用户登录后,可搜索和浏览课程信息信息,并可进行选课、提交选课信息;管理员登录系统后台后可对课程信息信息等进行管理,包括增改删查操作。测试设计如下所示:

  1. 登录模块功能测试

用户登录前首先需注册成为系统用户,使用账号和密码可进行登录。用户登录功能测试用例设计如下表所示:

表6-1 用户登录功功能测试用例

测试编号

测试目的

测试步骤

预期结果

实际结果

是否通过

TC001

验证有效登录

1. 输入正确的用户名和密码 <br> 2. 点击登录按钮

显示登录成功,跳转至用户首页

登录成功,跳转至用户首页

通过

TC002

验证空用户名登录

1. 不输入用户名,输入正确密码 <br> 2. 点击登录按钮

显示用户名不能为空提示信息

显示用户名不能为空提示信息

通过

TC003

验证空密码登录

1. 输入正确用户名,不输入密码 <br> 2. 点击登录按钮

显示密码不能为空提示信息

显示密码不能为空提示信息

通过

TC004

验证错误用户名登录

1. 输入错误的用户名和正确密码 <br> 2. 点击登录按钮

显示用户名或密码错误提示信息

显示用户名或密码错误提示信息

通过

TC005

验证错误密码登录

1. 输入正确用户名和错误密码 <br> 2. 点击登录按钮

显示用户名或密码错误提示信息

显示用户名或密码错误提示信息

通过

  1. 课程信息模块功能测试

课程信息模块测试包括课程信息展示功能测试、课程信息添加功能测试、课程信息搜索功能测试、选课申请功能测试。课程信息信息模块测试用例如表6.2-6.5所示。

课程信息信息展示功能测试用例设计如下表所示:

表6-2 课程信息信息展示功能测试用例

测试编号

测试目的

测试步骤

预期结果

实际结果

是否通过

TC001

验证正常展示课程信息信息

1. 进入课程信息信息展示页面 <br> 2. 浏览展示的课程信息信息内容

能够正常显示课程信息信息内容

课程信息信息内容正常显示

通过

TC002

验证课程信息信息链接跳转

1. 进入课程信息信息展示页面 <br> 2. 点击课程信息信息链接

能够跳转至相应课程信息信息详情页面

成功跳转至课程信息信息详情页面

通过

TC003

验证搜索功能

1. 进入课程信息信息展示页面 <br> 2. 使用搜索功能搜索课程信息信息

显示符合搜索条件的课程信息信息列表

显示符合搜索条件的课程信息信息列表

通过

TC004

验证课程分类展示

1. 进入课程信息信息展示页面 <br> 2. 选择课程分类

显示该分类下的课程信息信息列表

成功显示该分类下的课程信息信息列表

通过

TC005

验证课程信息信息的评论功能

1. 进入课程信息信息详情展示页面 <br> 2. 查看课程信息信息并发表评论

评论成功显示在课程信息信息页面

评论成功显示在课程信息信息页面

通过

TC006

验证课程信息信息咨询页面跳转

1. 进入课程信息信息详情展示页面 <br> 2. 点击课程信息信息咨询按钮

能够跳转至相应课程信息信息咨询页面

成功跳转至课程信息信息咨询页面

通过

TC007

验证选课申请页面跳转

1. 进入课程信息信息详情展示页面 <br> 2. 点击选课申请按钮

能够跳转至相应选课申请页面

成功跳转至选课申请页面

通过

课程信息信息添加功能测试用例设计如下表所示:

表6-3 课程信息信息添加功能测试用例

测试编号

测试目的

测试步骤

预期结果

实际结果

是否通过

TC001

验证添加课程信息信息

1. 进入课程信息信息添加界面 <br> 2. 输入课程信息信息 <br> 3. 点击添加按钮

课程信息信息成功添加到系统页面中

课程信息信息成功添加到系统页面中

通过

TC002

验证课程信息信息课程分类选择

1. 进入课程信息信息添加界面 <br> 2. 选择课程分类 <br> 3. 输入课程信息信息 <br> 4. 提交课程信息信息

根据选择的课程信息信息课程分类成功添加课程信息信息

根据选择的课程信息信息类型成功添加课程信息信息

通过

TC003

验证课程信息信息内容输入

1. 进入课程信息信息添加界面 <br> 2. 输入正确课程信息信息内容和答案 <br> 3. 点击添加按钮

课程信息信息内容成功录入系统

课程信息信息内容成功录入系统

通过

TC004

验证课程信息信息图片上传

1. 进入课程信息信息添加界面 <br> 2. 上传课程信息信息相关图片 <br> 3. 点击添加按钮

图片成功上传并与课程信息信息关联

图片成功上传并与课程信息信息关联

通过

课程信息信息搜索功能测试用例设计如下表所示:

表6-4 课程信息信息搜索功能测试用例

测试编号

测试目的

测试步骤

预期结果

实际结果

是否通过

TC001

验证课程信息信息输入课程信息名称搜索

1. 进入课程信息信息搜索界面 <br> 2. 输入课程信息名称 <br> 3. 确认并搜索

根据选择的课程信息名称关键词显示相关课程信息信息

根据选择的课程信息名称关键词成功显示相关课程信息信息

通过

TC002

验证课程信息信息输入课程分类搜索

1. 进入课程信息信息搜索界面 <br> 2. 输入课程分类 <br> 3. 确认并搜索

根据选择的课程分类关键词显示相关课程信息信息

根据选择的课程分类关键词成功显示相关课程信息信息

通过

TC003

验证课程信息信息选择审核状态搜索

1. 进入课程信息信息搜索界面 <br> 2. 输入审核状态 <br> 3. 确认并搜索

根据选择的审核状态关键词显示相关课程信息信息

根据选择的审核状态关键词成功显示相关课程信息信息

通过

选课申请功能测试用例设计如下表所示:

表6-5 选课申请功能测试用例

测试编号

测试目的

测试步骤

预期结果

实际结果

是否通过

TC001

验证未输入学生姓名,点击提交

1. 进入选课申请界面 <br> 2.未输入学生姓名,点击提交 <br> 3. 点击提交按钮

提示请输入学生姓名

提示请输入学生姓名

通过

TC002

验证未选择学生班级,点击提交

1. 进入选课申请界面 <br> 2.未未选择学生班级,点击提交 <br> 3. 点击提交按钮

提示请未选择学生班级

提示请未选择学生班级

通过

TC003

验证未输入选课备注,点击提交

1. 进入选课申请界面 <br> 2.未输入选课备注,点击提交 <br> 3. 点击提交按钮

提示请输入选课备注

提示请输入选课备注

通过

6.3 性能测试

(1)兼容性测试

表6-6 兼容性测试用例

用例编号

测试类型

测试目标

操作过程

预期结果

兼容性_01

设备兼容性

测试系统在不同设备上的表现

在多种设备上访问系统并记录表现

系统在各种设备上都能正常加载和显示页面

兼容性_02

浏览器兼容性

测试系统在不同浏览器上的表现

在多种浏览器中访问系统并记录表现

系统在各种主流浏览器上都能正常加载和显示页面

兼容性_03

分辨率兼容性

测试系统在不同分辨率下的显示效果

在不同分辨率的设备上访问系统并记录表现

系统在各种分辨率下都能适应并正常显示内容

兼容性_04

操作系统兼容性

测试系统在不同操作系统上的运行情况

在不同操作系统上访问系统并记录表现

系统能够在常用操作系统上正常运行和显示

(2)性能测试

表6-7 性能测试用例

用例编号

测试类型

测试目标

操作过程

预期结果

性能_01

负载测试

测试系统在正常负载下的性能

逐步增加用户数来模拟不同的负载情况

系统能够稳定处理并响应不同数量的用户请求

性能_02

压力测试

测试系统在极端负载下的性能

以超过系统承受极限的用户数来测试系统

系统能够在高负载情况下仍然保持正常运行

性能_03

并发测试

测试系统能同时处理多少并发用户请求

同时发送多个并发用户请求来测试系统性能

系统能够有效地处理多个并发请求

性能_04

数据量测试

测试系统在大数据量下的性能

向系统添加大量数据并测试系统响应时间

系统能够在大数据量情况下保持较快的响应时间

6.4 测试结果

全部测试用例都已通过,且不存在漏洞,实现了本论文开始时所作要求和期望。本系统运行稳定,使用流畅,可以满足客户需求。试运行后进行系统评估,可以认为该系统达到下单的目标要求,可以满足用户的需求,也满足了系统开发前所作目标。系统在经过大量重复测试后运行十分稳定,安全实用,功能模块已经达到下单目标所需。在规定的时间内实现系统的大部分功能,且满足要求,节省开发成本,有助于提高科学管理水平,符合本人经济情况。

结论

在基于SpringBoot的校园选修课程管理系统设计与实现中,我们通过学生用户、教师用户以及管理员等角色的划分,实现了多层次的用户管理和权限控制。通过课程信息管理、学院信息管理、专业信息管理、系统管理等功能模块,提供了便捷高效的学生选课系统管理体验。同时,点赞、收藏和发布评论等功能的引入,进一步增强了平台的交互性和用户满意度,有效保障了交流的公平性和平台的稳定运行。资源管理和校园公告管理的实施,不仅丰富了平台的内容,也促进了用户之间的信息交流与互动。

在未来的发展中,可以进一步优化系统的响应速度和用户体验,加强对用户行为的分析与挖掘,以实现个性化推荐和精准营销。同时,结合大数据和人工智能技术,提升平台的智能化水平,为用户提供更加智能化、便捷化的服务。此外,加强对安全性的防护和隐私保护,是平台未来发展的重要方向之一,保障用户信息的安全与私密性,维护良好的用户口碑和品牌形象。

通过不断优化和创新,校园选修课程管理系统将更好地满足用户的多样化需求,成为用户信赖和选择的首要平台之一。通过本次项目,我不仅深入理解了Spring Boot框架的应用和校园选修课程管理系统的设计思路,也积累了丰富的实际开发经验。未来,我将进一步优化系统的稳定性和安全性,引入更多智能化和个性化的功能,以更好地满足用户需求和市场变化。

参考文献

  1. 李乾江.昆明市高校开设龙舟选修课程的可行性研究——以云南师范大学为例[J].体育视野,2023,(09):29-31.
  2. 杨艳花.基于Web技术的计算机联锁仿真系统设计与实现[J].信息记录材料,2024,25(12):116-118+134.DOI:10.16009/j.cnki.cn13-1295/tq.2024.12.036.
  3. 刘秉阳,代鹏,乔守明.计算机网络课程在线学习系统中的互动工具设计[J].家电维修,2025,(02):42-44.
  4. 白晨.基于Web服务与数字化的网络协同工作性能优化技术研究[J].信息记录材料,
  5. 洪雅婷.基于学习者中心课程理论探究援外培训课程设置——以漳州科技职业学院茶类援外培训为例[J].福建茶叶,2025,47(02):124-126.
  6. 邱丹萍.基于深度学习的课程资源推荐技术研究[J].长江信息通信,2024,37(10):134-136.DOI:10.20153/j.issn.2096-9759.2024.10.039.
  7. Haque U M M ,Kotaiah B ,Ahamed J .Hybrid course recommendation system using SVD, NMF and attention-based neural network[J].International Journal of Information Technology,2025,(prepublish):1-8.
  8. Carbonaro W ,Lee K ,Langenkamp G A .Racial Inequality in 8th-Grade Math Course-Taking: Between-School Inequality, Local Achievement Queues, and Course Placements[J].American Sociological Review,2024,89(6):1011-1043.
  9. 朱金波.Java编程语言在计算机软件开发中的应用优势分析[J].信息记录材料,2023,24(05):68-70.
  10. 王志亮,纪松波.基于SpringBoot的Web前端与数据库的接口设计[J].工业控制计算机,2023,36(03):51-53.
  11. 杨华,徐扬.MySQL数据库对中文编码支持的探讨[J].网络安全和信息化,2023,(10):157-160.
  12. 吴婷婷.计算机网站的前端开发技术探析[J].电脑知识与技术,2023,19(27):43-45.
  13. 倪嘉慧.大学生选课要注重个人长远发展[N].人民日报海外版,2025-02-24(005).
  14. 曲昌展,佟喆,齐芳,等.学分制背景下选课制度存在的问题及对策分析——以东北大学秦皇岛分校为例[J].公关世界,2025,(04):172-174.
  15. 翟洪杰,董进霞,杨桂懿,等.浅析“人工智能+”背景下电子信息类专业学生的职业适应性[J].四川劳动保障,2025,(02):179-180.
  16. 张磊,宋欣钰.高校通识选修课程的现状分析与建设探索[J].中国多媒体与网络教学学报(上旬刊),2025,(01):107-110.
  17. 田崛,翁玲,陈阿虹,等.基于选修课建设的专科医院特色教学模式探索[J].医院管理论坛,2024,41(12):82-84+81.
  18. 王全蕊.基于学习反馈的学科知识图谱智能问答系统研究[J].科技与创新,2025,(02):54-57.DOI:10.15913/j.cnki.kjycx.2025.02.014.
  19. 许琼.国外自适应学习系统的特点及启示[J].中国教育技术装备,2024,(16):142-147.
  20. 熊志平,王迎春,程兴旺.金属类专业综合应用型专业选修课的必要性及其设计——“Materials Engineering and Performance”专业选修课[J].金属热处理,2025,50(01):337-340.DOI:10.13251/j.issn.0254-6051.2025.01.051.

致  谢

时光荏苒,大学的学业生涯即将画上美好的句号。在这段时光里,我深感老师的热情与友谊,校长对学生的关爱深深印在我的心中。老师们时常关心我们的生活状况,关切我们的旅游、寝室和学习环境,使我们感受到了温馨与关怀。在此,我想表达对那些曾经给予我帮助的人们的深深感激之情。

首先,我要衷心感谢我的导师。无论是在学业上还是生活中,您都给予我巨大的支持与启发。这些年来,在您的教导下,我不仅学到了丰富的知识,还领悟了做人的真谛。您的认真和待人之道让我受益匪浅,我感激能够成为您的学生。

同时,感谢我的专业课老师们。没有你们的精心教导,我的论文也不可能如此顺利。我所学到的知识将成为我未来发展的重要动力。

感谢同学们,写作过程中遇到的问题,得到了同学们的耐心指导和丰富参考材料。你们给予了我很多帮助,感谢你们对我的支持。

最后,感谢我的父母,是你们的支持和鼓励让我能够顺利完成学业。你们为我付出了辛勤的努力和无私的关爱,是我坚强前行的后盾。在即将离开校园,我深感家庭的温馨和爱意,这些将是我未来奋斗的力量源泉。

感谢你们一直以来的支持和陪伴,让我在大学的日子里无论遇到什么困难都感到温馨而坚定。未来,我将以更加饱满的热情投入社会工作,为家人和自己创造更美好的未来。再次感谢大家的陪伴与关爱!

点赞+收藏+关注  →私信领取本源代码、数据库

关注博主下篇更精彩
一键三连!!!
一键三连!!!
一键三连!!!
感谢一键三连!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值