当前位置: 首页 > news >正文

JAVA实战开源项目:学生日常行为评分管理系统(Vue+SpringBoot)

在这里插入图片描述


目录

  • 一、摘要
    • 1.1 项目介绍
    • 1.2 项目录屏
  • 二、系统设计
    • 2.1 功能模块设计
      • 2.2.1 登录注册模块
      • 2.2.2 用户管理模块
      • 2.2.3 评分项目模块
      • 2.2.4 评分数据模块
      • 2.2.5 数据字典模块
    • 2.3 可行性设计
    • 2.4 用例设计
    • 2.5 数据库设计
      • 2.5.1 整体 E-R 图
      • 2.5.2 用户
      • 2.5.3 评分项目
      • 2.5.4 评分数据
      • 2.5.5 数据字典
  • 三、系统实现
    • 3.1 登录
    • 3.2 主页
    • 3.3 评分项目模块
    • 3.4 评分数据模块
  • 四、核心代码
    • 4.1 用户查询
    • 4.2 查询自己的评分数据
    • 4.3 新增评分数据
    • 4.4 新增评分项目
  • 五、免责说明


一、摘要

1.1 项目介绍

基于Vue+SpringBoot+MySQL的*学生日常行为评分管理系统,包含了评分项目模块、评分数据模块,还包含系统自带的用户管理、部门管理、角色管理、菜单管理、日志管理、数据字典管理、文件管理、图表展示等基础模块,学生日常行为评分管理系统基于角色的访问控制,给学生、教师、管理员使用,可将权限精确到按钮级别,您可以自定义角色并分配权限,系统适合设计精确的权限约束需求。

学生的日常行为代表着学生个人的品行,值得高校去分析研究,高校需要注重学生日常行为管理,及时对学生的行为进行记录,才能帮助学生全面发展。开发学生日常行为评分管理系统的目的是提高高校学生管理者的工作效率,让高校老师的日常管理事务得到有效缓解,也能让学生更全面、快速地掌握自身的信息,更好地约束学生的日常行为。

学生日常行为评分管理系统基于 Java 语言开发,采用前后端分离的技术架构,前端采用 Vue.js,后端采用 SpringBoot 框架,数据库使用 MySQL

1.2 项目录屏


二、系统设计

在这里插入图片描述

2.1 功能模块设计

2.2.1 登录注册模块

登录注册模块的作用,是帮助用户进入学生日常行为评分管理系统。用户可以使用账号、密码和图形验证码登录到系统,如果账号密码输入错误会给与提示。如果用户没有账号需要到注册模块进行账号注册,提供用户名、密码、确认密码、邮箱、手机号、出生日期、角色信息,完成注册后再次登录。

2.2.2 用户管理模块

用户管理模块关于用户的个人数据和隐私信息,用于学生日常行为评分管理系统。因此,为了确保数据的安全和隐私,防止用户的个人数据泄露,学生日常行为评分管理系统需要一个用户管理模块,用户管理模块帮助系统执行用户身份验证,并确保只有授权用户才能访问系统,这有效地防止了未经授权的访问和系统滥用。用户管理模块实现不同用户之间的权限控制,使得每个用户只能访问必要的功能和数据,例如管理员可以拥有更高级别的权限,但普通用户只能访问某些系统内容,用户管理模块允许用户反馈和参与,确保学生日常行为评分管理系统从用户那里获得有价值的反馈和建议,这有助于优化系统设计和提高系统功能,从而提高用户体验和满意度。如上所述,用户管理模块对于学生日常行为评分管理系统非常重要,它可以确保学生日常行为评分管理系统的安全性、可靠性和可用性,并促进用户的参与和反馈。

在这里插入图片描述

2.2.3 评分项目模块

学生日常行为评分管理系统之所以需要评分项目模块,是因为日常行为的表现形式太多了,不同的行为是独立的,不进行相互关联,通过将日常活动分解为几个具体的评分项目,可以更客观地评估个人的行为表达,并在评估结果中找到具体的问题和改进方向,评估项目模块还帮助评估者减少评估过程中的主观影响,提高评估的准确性和可靠性。

在这里插入图片描述

2.2.4 评分数据模块

学生日常行为评分管理系统需要一个评估数据模块,因为它可以收集、存储、分析和处理用户的日常行为数据,为用户提供个性化的建议和反馈。通过评估数据模块,可以了解用户的健康状况、锻炼习惯、饮食偏好等信息,学生日常行为评分管理系统可以更准确地确定用户的行为是否符合管理员规定的标准,并为用户制定适当的计划,帮助用户实现设定目标,评分数据模块还记录用户的行为变化和进展,为用户提供更详细的服务和支持。

在这里插入图片描述

2.2.5 数据字典模块

学生日常行为评分管理系统需要一个数据字典模块,这是因为它可以提供一个用于分类、组织和存储数据的结构化框架,以便于数据管理和处理,在学生日常行为评分管理系统中,数据字典模块可以包括各种分类代码和定义,如时间代码、地点代码、动作类型代码等,这些编码和定义允许学生日常行为评分管理系统更好地记录和分析行为数据,以提高评分的准确性和有效性,同时,数据字典模块可以方便用户查询和统计相关的数据信息,从而提高学生日常行为评分管理系统使用效率和用户体验。

在这里插入图片描述

2.3 可行性设计

学生日常行为评分管理系统的可行性分析主要包括以下 4 4 4 个方面。

  1. 技术可行性:学生日常行为评分管理系统需要基于 vuespringboot 等开发技术,这些技术在现代社会得到了广泛的应用和发展,在技术上是可行的。
  2. 经济可行性:学生日常行为评分管理系统需要硬件基础设施建设,软件开发需要一定的投资。但是,随着科技的发展,硬件设施的成本不断降低,也有大量的开源框架可供软件开发。因此,从长远来看,学生日常行为评分管理系统是一种新型的管理系统,所以在经济上是可行的。
  3. 用户需求:学生日常行为评分管理系统可以帮助高校管理学生,提高学生管理效率,满足高校的实际需求,具有良好的市场前景。
  4. 竞争分析:学生日常行为评分管理系统已经在一些大型超市得到应用,市场上也有成熟的超市导航产品。因此,需要更好的策略和方法来促进与竞争对手的市场竞争。

日常行为评分系统具有经济可行性。首先,由于日常行为评分系统可以通过分析和处理用户的日常行为数据来提供个性化建议和反馈,因此可以吸引更多用户使用,从而增加收入来源。其次,该系统还可以与其他健康管理软件或设备进行合作,共同推广健康生活方式,进一步扩大市场份额。此外,日常行为评分系统还可以为医疗机构、保险公司等提供相关数据和服务,从而形成更广泛的商业合作。最后,日常行为评分系统可依靠云计算等技术实现资源共享和成本节约,提高盈利效率。综上所述,日常行为评分系统在商业模式和技术应用方面都具有较好的发展前景和经济可行性。

日常行为评分系统是一种基于技术手段对人类行为进行评估的系统。虽然技术手段可以收集和分析许多数据,但评估人类行为涉及到很多主观性和复杂性,因此其技术可行性存在较大挑战。首先,日常行为评分系统需要准确地识别和记录人类行为,这需要使用各种传感器和设备来捕捉数据。然而,这些设备可能会受到环境影响或者被人为干扰,导致数据的准确性存在疑问。其次,日常行为评分系统需要进行数据分析和处理,以评估人类行为的质量和效果。然而,要在大量数据中准确地提取有用信息并进行分析是非常困难和耗时的。最后,日常行为评分系统需要建立一个完整的评估标准和方法,以确保评估过程的公正性和准确性。这需要综合考虑人类行为的主观性和复杂性,同时还需要涉及专家意见和社会价值观的反馈。因此,虽然技术手段可以为日常行为评分系统的开发提供支持,但实现真正的技术可行性仍然需要充分的研究和实践。

日常行为评分系统的操作可行性取决于多个因素,包括系统的设计、用户的技能和使用环境等。如果系统的设计合理且易于使用,用户熟悉其功能和操作流程,并在实际使用中得到了充分的支持和帮助,那么日常行为评分系统的操作是可行的。对于日常行为评分系统而言,一些关键点需要考虑,系统界面要具备良好的用户交互体验,以提高用户的学习曲线和使用效率。系统的操作流程应该尽可能简单化,需要减少用户的心理和生理负荷,让用户更加专注于任务本身。评分系统的数据采集和处理过程需要保证数据的准确性和完整性,以保障后续的数据分析和应用。评分系统需要建立完善的安全机制,防止数据泄露和非法访问,保护用户的个人隐私。
综合考虑以上因素,学生日常行为评分管理系统的可行性是比较高的

2.4 用例设计

在这里插入图片描述

2.5 数据库设计

2.5.1 整体 E-R 图

在这里插入图片描述

2.5.2 用户

在这里插入图片描述
在这里插入图片描述

2.5.3 评分项目

在这里插入图片描述
在这里插入图片描述

@Table(name = "a_score_project")
@TableName("a_score_project")
@ApiModel(value = "评分项目")
public class ScoreProject extends ZwzBaseEntity {private static final long serialVersionUID = 1L;@ApiModelProperty(value = "评分项目名称")private String title;@ApiModelProperty(value = "评分细则")private String content;@ApiModelProperty(value = "排序值")private BigDecimal sortOrder;@ApiModelProperty(value = "备注")private String remark;
}

2.5.4 评分数据

在这里插入图片描述
在这里插入图片描述

@Table(name = "a_score_data")
@TableName("a_score_data")
@ApiModel(value = "评分数据")
public class ScoreData extends ZwzBaseEntity {private static final long serialVersionUID = 1L;@ApiModelProperty(value = "项目ID")private String projectId;@ApiModelProperty(value = "项目名称")private String projectName;@ApiModelProperty(value = "学生ID")private String studentId;@ApiModelProperty(value = "学生姓名")private String studentName;@ApiModelProperty(value = "加分数值")private BigDecimal value;@ApiModelProperty(value = "加分原因")private String reason;@ApiModelProperty(value = "加分时间")private String time;@ApiModelProperty(value = "操作人ID")private String workId;@ApiModelProperty(value = "操作人")private String workName;
}

2.5.5 数据字典

在这里插入图片描述
在这里插入图片描述

三、系统实现

3.1 登录

在这里插入图片描述

3.2 主页

在这里插入图片描述

3.3 评分项目模块

在这里插入图片描述
在这里插入图片描述

3.4 评分数据模块

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

四、核心代码

4.1 用户查询

@RequestMapping(value = "/getAll", method = RequestMethod.GET)
@ApiOperation(value = "查询用户数据")
public Result<List<User>> getAll(@RequestParam Integer type){QueryWrapper<User> qw = new QueryWrapper<>();qw.eq("type",type);return new ResultUtil<List<User>>().setData(iUserService.list(qw));
}

4.2 查询自己的评分数据

@RequestMapping(value = "/getByPage", method = RequestMethod.GET)
@ApiOperation(value = "查询评分数据")
public Result<IPage<ScoreData>> getByPage(@ModelAttribute ScoreData scoreData ,@ModelAttribute PageVo page){QueryWrapper<ScoreData> qw = new QueryWrapper<>();User currUser = securityUtil.getCurrUser();QueryWrapper<User> userQw = new QueryWrapper<>();userQw.eq("id",currUser.getId());userQw.inSql("id","SELECT DISTINCT user_id FROM a_user_role WHERE del_flag = 0 AND (role_id = '1536606659751841799' OR role_id = '1674219991056125952')");if(iUserService.count(userQw) > 0L) {qw.eq("student_id",currUser.getId());}if(!ZwzNullUtils.isNull(scoreData.getProjectName())) {qw.like("project_name",scoreData.getProjectName());}if(!ZwzNullUtils.isNull(scoreData.getStudentName())) {qw.like("student_name",scoreData.getStudentName());}if(!ZwzNullUtils.isNull(scoreData.getWorkName())) {qw.like("work_name",scoreData.getWorkName());}IPage<ScoreData> data = iScoreDataService.page(PageUtil.initMpPage(page),qw);return new ResultUtil<IPage<ScoreData>>().setData(data);
}

4.3 新增评分数据

@RequestMapping(value = "/insert", method = RequestMethod.POST)
@ApiOperation(value = "新增评分数据")
public Result<ScoreData> insert(ScoreData scoreData){ScoreProject sp = iScoreProjectService.getById(scoreData.getProjectId());if(sp == null) {return ResultUtil.error("评分项目不存在");}scoreData.setProjectName(sp.getTitle());User student = iUserService.getById(scoreData.getStudentId());if(student == null) {return ResultUtil.error("学生不存在");}scoreData.setStudentName(student.getNickname());User currUser = securityUtil.getCurrUser();scoreData.setWorkId(currUser.getId());scoreData.setWorkName(currUser.getNickname());scoreData.setTime(DateUtil.now());iScoreDataService.saveOrUpdate(scoreData);return new ResultUtil<ScoreData>().setData(scoreData);
}

4.4 新增评分项目

@RequestMapping(value = "/insert", method = RequestMethod.POST)
@ApiOperation(value = "新增评分项目")
public Result<ScoreProject> insert(ScoreProject scoreProject){if(Objects.equals(0,scoreProject.getSortOrder().compareTo(BigDecimal.ZERO))) {scoreProject.setSortOrder(BigDecimal.valueOf(iScoreProjectService.count()));}iScoreProjectService.saveOrUpdate(scoreProject);return new ResultUtil<ScoreProject>().setData(scoreProject);
}

五、免责说明

  • 本项目仅供个人学习使用,商用授权请联系博主,否则后果自负。
  • 博主拥有本软件构建后的应用系统全部内容所有权及独立的知识产权,拥有最终解释权。
  • 如有问题,欢迎在仓库 Issue 留言,看到后会第一时间回复,相关意见会酌情考虑,但没有一定被采纳的承诺或保证。

下载本系统代码或使用本系统的用户,必须同意以下内容,否则请勿下载!

  1. 出于自愿而使用/开发本软件,了解使用本软件的风险,且同意自己承担使用本软件的风险。
  2. 利用本软件构建的网站的任何信息内容以及导致的任何版权纠纷和法律争议及后果和博主无关,博主对此不承担任何责任。
  3. 在任何情况下,对于因使用或无法使用本软件而导致的任何难以合理预估的损失(包括但不仅限于商业利润损失、业务中断与业务信息丢失),博主概不承担任何责任。
  4. 必须了解使用本软件的风险,博主不承诺提供一对一的技术支持、使用担保,也不承担任何因本软件而产生的难以预料的问题的相关责任。

在这里插入图片描述

相关文章:

JAVA实战开源项目:学生日常行为评分管理系统(Vue+SpringBoot)

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、系统设计2.1 功能模块设计2.2.1 登录注册模块2.2.2 用户管理模块2.2.3 评分项目模块2.2.4 评分数据模块2.2.5 数据字典模块 2.3 可行性设计2.4 用例设计2.5 数据库设计2.5.1 整体 E-R 图2.5.2 用户2.5.3 评分项目2.5.4 评分数据2.5.…...

力扣-[700. 二叉搜索树中的搜索]

递归法 确定递归函数的参数和返回值 递归函数的参数传入的就是根节点和要搜索的数值&#xff0c;返回的就是以这个搜索数值所在的节点。 代码如下&#xff1a; public TreeNode searchBST(TreeNode root, int val) 确定终止条件 如果root为空&#xff0c;返回null&#xff0c…...

Hive-源码分析一条hql的执行过程

一、源码下载 下面是hive官方源码下载地址&#xff0c;我下载的是hive-3.1.3&#xff0c;那就一起来看下吧 https://dlcdn.apache.org/hive/hive-3.1.3/apache-hive-3.1.3-src.tar.gz 二、上下文 <Hive-源码带你看hive命令背后都做了什么>博客中已经讲到了hive命令执行…...

软考71-上午题-【面向对象技术2-UML】-UML中的图2

一、用例图 上午题&#xff0c;考的少&#xff1b;下午题&#xff0c;考的多。 1-1、用例图的定义 用例图展现了一组用例、参与者以及它们之间的关系。 用例图用于对系统的静态用例图进行建模。 可以用下列两种方式来使用用例图&#xff1a; 1、对系统的语境建模&#xff1b…...

使用hashmap优化时间复杂度,leetcode1577

1577. 数的平方等于两数乘积的方法数 已解答 中等 相关标签 相关企业 提示 给你两个整数数组 nums1 和 nums2 &#xff0c;请你返回根据以下规则形成的三元组的数目&#xff08;类型 1 和类型 2 &#xff09;&#xff1a; 类型 1&#xff1a;三元组 (i, j, k) &#xff…...

3、设计模式之工厂模式1

工厂模式是什么&#xff1f;     工厂模式是一种创建者模式&#xff0c;用于封装和管理对象的创建&#xff0c;屏蔽了大量的创建细节&#xff0c;根据抽象程度不同&#xff0c;主要分为简单工厂模式、工厂方法模式以及抽象工厂模式。 简单工厂模式 看一个具体的需求 看一个…...

一个Promise全新API

1. 资讯速览 最近&#xff0c;Promise 新出了一个方法&#xff0c;已经进入 Stage 3 &#xff08;候选阶段&#xff09; &#xff0c;相信很快就能达到 Stage 4 &#xff08;完成阶段&#xff09;&#xff0c;并在项目中广泛使用。 这个方法就是 Promise.withResolvers。它是…...

【力扣hot100】刷题笔记Day25

前言 这几天搞工作处理数据真是类似我也&#xff0c;还被老板打电话push压力有点大的&#xff0c;还好搞的差不多了&#xff0c;明天再汇报&#xff0c;赶紧偷闲再刷几道题&#xff08;可恶&#xff0c;被打破连更记录了&#xff09;这几天刷的是动态规划&#xff0c;由于很成…...

webpack5零基础入门-4使用webpack处理less文件

1.安装less npm install less -D 2.创建less文件 .box{width: 100px;height: 100px;background: red; } 3.引入less文件并打包 执行npx webpack 报错无法识别less文件 4.安装less-loader并配置 npm install less-loader9 -D 这里指定一下版本不然会因为node版本过低报错 …...

Python机器学习预测+回归全家桶,新增TCN,BiTCN,TCN-GRU,BiTCN-BiGRU等组合模型预测...

截止到本期&#xff0c;一共发了4篇关于机器学习预测全家桶Python代码的文章。参考往期文章如下&#xff1a; 1.机器学习预测全家桶-Python&#xff0c;一次性搞定多/单特征输入&#xff0c;多/单步预测&#xff01;最强模板&#xff01; 2.机器学习预测全家桶-Python&#xff…...

一文了解Cornerstone3D中窗宽窗位的3种设置场景及原理

&#x1f506; 引言 在使用Cornerstone3D渲染影像时&#xff0c;有一个常用功能“设置窗宽窗位&#xff08;windowWidth&windowLevel&#xff09;”&#xff0c;通过精确调整窗宽窗位&#xff0c;医生能够更清晰地区分各种组织&#xff0c;如区别软组织、骨骼、脑组织等。…...

部署 LVS(nginx)+keepalived高可用负载均衡集群

目录 一、集群的概述 1、什么是集群 2、普通集群与负载均衡集群 2.1 普通集群&#xff08;Regular Cluster&#xff09; 2.2 负载均衡集群&#xff08;Load Balancing Cluster&#xff09; 2.3 高可用集群&#xff08;High Availability Cluster&#xff09; 2.4 区别 …...

Qt/QML编程之路:fork、vfork、exec、clone的对比及使用(46)

前言: 系统调用system call是OS提供的服务提供接口。系统调用fork()、vfork()、exec()和clone()都用于创建和操作进程。Linux下Qt编程也会用到vfork进行多进程间通信。让我们看一下以下每个系统调用的概述和比较: fork()、vfork()和clone()的工作原理相似,但在处…...

Go语言框架路由Controller控制器设计思路gin路由根据控制器目录分层生成路由地址

Controller设计好处 框架设计用controller分请求路由层级&#xff0c;应用从app目录开始对应请求url路由地址&#xff0c;这样设计师方便开发时候通过请求地址层级快速定位接口方法对应的代码位置。 例如api接口请求路径为&#xff1a;​​http://localhost:8110/​​busines…...

突破编程_C++_设计模式(责任链模式)

1 责任链模式的概念 责任链模式&#xff08;Chain of Responsibility Pattern&#xff09;是一种行为设计模式&#xff0c;它允许对象以链式的方式组织起来&#xff0c;以便对请求进行处理。这种模式为多个对象处理同一请求提供了一个灵活的机制&#xff0c;而无需在发送者和多…...

php开发100问?

什么是 PHP&#xff1f;PHP 是一种什么类型的语言&#xff1f;PHP 的优缺点是什么&#xff1f;如何在服务器上配置 PHP&#xff1f;PHP 中的变量是如何声明和使用的&#xff1f;如何在 PHP 中输出文本和变量&#xff1f;什么是 PHP 的数据类型&#xff1f;如何在 PHP 中实现条件…...

flink实战--Flink任务资源自动化优化

背景 在生产环境Flink任务资源是用户在实时平台端进行配置,用户本身对于实时任务具体配置多少资源经验较少,所以存在用户资源配置较多,但实际使用不到的情形。比如一个 Flink 任务实际上 4 个并发能够满足业务处理需求,结果用户配置了 16 个并发,这种情况会导致实时计算资…...

tsv文件在大数据技术栈里的应用场景

是的&#xff0c;\t 是指制表符&#xff08;tab&#xff09;&#xff0c;它通常用作字段分隔符在 TSV&#xff08;Tab-Separated Values&#xff09;格式的文件中。TSV是一种简单的文本格式&#xff0c;它使用制表符来分隔每一列中的值&#xff0c;而每一行则代表一个数据记录。…...

vscode设置setting.json

{ // vscode默认启用了根据文件类型自动设置tabsize的选项 "editor.detectIndentation": false, // 重新设定tabsize "editor.tabSize": 2, // #每次保存的时候自动格式化 // "editor.formatOnSave": true, // #每次保存的时候将代码按eslint格式…...

Docker的安装及镜像加速的配置

文章目录 一.切换到root二.卸载旧版docker三.配置docker的yum库四.安装Docker五.Docker的启动和验证六.配置Docker阿里云镜像加速(全程免费) 该文章文章演示在Linux系统中安装docker&#xff0c;Windows安装docker请参考以下文章 Windows系统中安装docker及镜像加速的配置 一…...

变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析

一、变量声明设计&#xff1a;let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性&#xff0c;这种设计体现了语言的核心哲学。以下是深度解析&#xff1a; 1.1 设计理念剖析 安全优先原则&#xff1a;默认不可变强制开发者明确声明意图 let x 5; …...

深度学习在微纳光子学中的应用

深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向&#xff1a; 逆向设计 通过神经网络快速预测微纳结构的光学响应&#xff0c;替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…...

AtCoder 第409​场初级竞赛 A~E题解

A Conflict 【题目链接】 原题链接&#xff1a;A - Conflict 【考点】 枚举 【题目大意】 找到是否有两人都想要的物品。 【解析】 遍历两端字符串&#xff0c;只有在同时为 o 时输出 Yes 并结束程序&#xff0c;否则输出 No。 【难度】 GESP三级 【代码参考】 #i…...

剑指offer20_链表中环的入口节点

链表中环的入口节点 给定一个链表&#xff0c;若其中包含环&#xff0c;则输出环的入口节点。 若其中不包含环&#xff0c;则输出null。 数据范围 节点 val 值取值范围 [ 1 , 1000 ] [1,1000] [1,1000]。 节点 val 值各不相同。 链表长度 [ 0 , 500 ] [0,500] [0,500]。 …...

在Ubuntu中设置开机自动运行(sudo)指令的指南

在Ubuntu系统中&#xff0c;有时需要在系统启动时自动执行某些命令&#xff0c;特别是需要 sudo权限的指令。为了实现这一功能&#xff0c;可以使用多种方法&#xff0c;包括编写Systemd服务、配置 rc.local文件或使用 cron任务计划。本文将详细介绍这些方法&#xff0c;并提供…...

python如何将word的doc另存为docx

将 DOCX 文件另存为 DOCX 格式&#xff08;Python 实现&#xff09; 在 Python 中&#xff0c;你可以使用 python-docx 库来操作 Word 文档。不过需要注意的是&#xff0c;.doc 是旧的 Word 格式&#xff0c;而 .docx 是新的基于 XML 的格式。python-docx 只能处理 .docx 格式…...

零基础设计模式——行为型模式 - 责任链模式

第四部分&#xff1a;行为型模式 - 责任链模式 (Chain of Responsibility Pattern) 欢迎来到行为型模式的学习&#xff01;行为型模式关注对象之间的职责分配、算法封装和对象间的交互。我们将学习的第一个行为型模式是责任链模式。 核心思想&#xff1a;使多个对象都有机会处…...

CMake 从 GitHub 下载第三方库并使用

有时我们希望直接使用 GitHub 上的开源库,而不想手动下载、编译和安装。 可以利用 CMake 提供的 FetchContent 模块来实现自动下载、构建和链接第三方库。 FetchContent 命令官方文档✅ 示例代码 我们将以 fmt 这个流行的格式化库为例,演示如何: 使用 FetchContent 从 GitH…...

【开发技术】.Net使用FFmpeg视频特定帧上绘制内容

目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法&#xff0c;当前调用一个医疗行业的AI识别算法后返回…...

浪潮交换机配置track检测实现高速公路收费网络主备切换NQA

浪潮交换机track配置 项目背景高速网络拓扑网络情况分析通信线路收费网络路由 收费汇聚交换机相应配置收费汇聚track配置 项目背景 在实施省内一条高速公路时遇到的需求&#xff0c;本次涉及的主要是收费汇聚交换机的配置&#xff0c;浪潮网络设备在高速项目很少&#xff0c;通…...