SpringBoot3.3集成knif4j-swagger文档方式和使用案例
springboot3 集成 knif4j :
访问地址:
swagger
接口文档默认地址:http://localhost:8080/swagger-ui.html#
Knife4j
接口文档默认地址:http://127.0.0.1:8080/doc.html
Maven:
<dependency><groupId>com.github.xiaoymin</groupId><artifactId>knife4j-openapi3-jakarta-spring-boot-starter</artifactId><version>4.4.0</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><version>3.3.0</version></dependency><dependency><groupId>com.github.xiaoymin</groupId><artifactId>knife4j-gateway-spring-boot-starter</artifactId><version>${knife4j-openapi3.version}</version></dependency>
基础微服务配置:
knife4j:# 开启增强配置enable: truebasic:enable: true# Basic认证用户名username: babasic# Basic认证密码password: BaBasic123!@#plm## 开启生产环境屏蔽,一定要先开启knife4j增强才会生效## You do not have permission to access this pageproduction: false
网关配置:
knife4j:gateway:enabled: true# 排序规则(tag/operation排序自4.2.0版本新增)# 取值:alpha-默认排序规则,官方swagger-ui默认实现,order-Knife4j提供的增强排序规则,开发者可扩展x-order,根据数值来自定义排序tags-sorter: orderoperations-sorter: order# 指定服务发现的模式聚合微服务文档strategy: manualroutes:- name: App1服务# 子服务存在其他分组情况,聚合其他分组url: /app1/v3/api-docs# 服务名称(Optional)service-name: baian-cloud-test-app1# 路由前缀context-path: /app1# 排序order: 1- name: App2服务# 子服务存在其他分组情况,聚合其他分组url: /app2/v3/api-docs# 服务名称(Optional)service-name: baian-cloud-test-app2# 路由前缀context-path: /app2# 排序order: 2- name: App3服务# 子服务存在其他分组情况,聚合其他分组url: /app3/v3/api-docs# 服务名称(Optional)service-name: baian-cloud-test-app3# 路由前缀context-path: /app3# 排序order: 3
全局添加自定义头
package com.baian.common.core.config;import io.swagger.v3.oas.models.Operation;
import io.swagger.v3.oas.models.media.Schema;
import io.swagger.v3.oas.models.parameters.HeaderParameter;
import io.swagger.v3.oas.models.security.SecurityRequirement;
import lombok.extern.slf4j.Slf4j;
import org.springdoc.core.customizers.GlobalOpenApiCustomizer;
import org.springdoc.core.customizers.GlobalOperationCustomizer;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.http.HttpHeaders;
import org.springframework.web.method.HandlerMethod;import java.util.List;/*** @program: baian-cloud* @description: 为每个接口添加鉴权* @author: <航迹者-694204477@qq.com>* @create: 2024-07-02 10:21**/
@Slf4j
@Configuration
public class Knife4jOperationCustomizer {@Value("${sa-token.token-name:Authorization}")private String securityHeaderName;@Beanpublic GlobalOpenApiCustomizer orderGlobalOpenApiCustomizer() {return openApi -> {// 全局添加鉴权参数if (openApi.getPaths() != null) {HeaderParameter parametersItem = new HeaderParameter();parametersItem.setName(securityHeaderName);parametersItem.setRequired(false);Schema<String> schema = new Schema<>();schema.setType("string");parametersItem.setSchema(schema);openApi.getPaths().forEach((s, pathItem) -> {pathItem.readOperations().forEach(operation -> {// 为所有接口添加请求头operation.addParametersItem(parametersItem);// 为所有接口添加鉴权
// operation.addSecurityItem(new SecurityRequirement().addList(HttpHeaders.AUTHORIZATION));});});}};}
}// https://doc.xiaominfo.com/docs/blog/add-authorization-header
注解:Springfox改用Springdoc后,注解改变:
@Api → @Tag@ApiIgnore → @Parameter(hidden = true) or @Operation(hidden = true) or @Hidden@ApiImplicitParam → @Parameter@ApiImplicitParams → @Parameters@ApiModel → @Schema@ApiModelProperty(hidden = true) → @Schema(accessMode = READ_ONLY)@ApiModelProperty → @Schema@ApiOperation(value = "foo", notes = "bar") → @Operation(summary = "foo", description = "bar")@ApiParam → @Parameter@ApiResponse(code = 404, message = "foo") → @ApiResponse(responseCode = "404", description = "foo")
实用新增注解:
@ParameterObject
案例
@Tag(name = "用户接口")
@RestController
@RequestMapping("sys/user")
public class SysUserController {@Resourceprivate ISysUserService sysUserService;@Operation(summary = "分页查询")@GetMapping("page")public AjaxResult queryPage(@ParameterObject SysUserPageDTO dto) {PageInfo page = sysUserService.queryPage(dto);return AjaxResult.success(page);}@Operation(summary = "详情")@GetMapping("{id}")public AjaxResult queryInfo(@PathVariable Long id) {SysUserDTO dto = sysUserService.queryById(id);return AjaxResult.success(dto);}@Operation(summary = "新增")@PostMappingpublic AjaxResult save(@RequestBody SysUserDTO dto) {Long id = sysUserService.saveInfo(dto);return AjaxResult.success(id);}
}
@Getter
@Setter
@TableName("user")
@Schema(name = "User", description = "$!{table.comment}")
public class User implements Serializable {private static final long serialVersionUID = 1L;@Schema(description = "主键")@TableId("id")private Long id;@Schema(description = "用户名")@TableField("name")private String name;@Schema(description = "手机号")@TableField("phone")private String phone;@Schema(description = "性别")@TableField("sex")private String sex;@Schema(description = "状态 0:禁用,1:正常")@TableField("status")private Integer status;
}
其他参考:
https://gitee.com/-/ide/project/xiaoym/swagger-bootstrap-ui-demo/edit/master/-/knife4j-spring-boot3-demo/src/main/java/com/github/xiaoymin/boot3/config/SwaggerConfig.java
https://blog.csdn.net/m0_74055560/article/details/134348304
福利配置: 自动转发。
package com.baian.common.core.config;import io.undertow.servlet.spec.HttpServletRequestImpl;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;import java.io.IOException;/*** @program: baian-cloud* @description: resource* @author: <航迹者-694204477@qq.com>* @create: 2024-07-02 08:51**/
@RestController
@Slf4j
public class BaiAnResourceCtl {@GetMapping("/")public void context(HttpServletRequest request, HttpServletResponse response) throws IOException {log.error("=====baian-cloud-common-web-core=======com.baian.common.core.config.BaiAnResourceCtl=================默认根path/====重定向到/doc.html==========");if (request instanceof HttpServletRequestImpl undertow) {String resolvedPath = undertow.getExchange().getResolvedPath();response.sendRedirect(resolvedPath + "/doc.html");return;}response.sendRedirect("/doc.html");}}
相关文章:
![](https://www.ngui.cc/images/no-images.jpg)
SpringBoot3.3集成knif4j-swagger文档方式和使用案例
springboot3 集成 knif4j : 访问地址: swagger 接口文档默认地址:http://localhost:8080/swagger-ui.html# Knife4j 接口文档默认地址:http://127.0.0.1:8080/doc.html Maven: <dependency><groupId>com.github.x…...
![](https://www.ngui.cc/images/no-images.jpg)
老年服务与管理实训室:制定教学模式
随着我国人口老龄化程度的加深,如何为老年人提供优质的养老服务成为社会关注的重点。作为培养老年服务人才的重要阵地,老年服务与管理实训室应制定科学合理的教学模式,满足行业发展需求,培养出高素质的老年服务专业人才。本文针对老年服务与管理实训室的教学模式展开探讨,提出相…...
![](https://www.ngui.cc/images/no-images.jpg)
4、DDD、中台和微服务的关系
DDD、中台和微服务的关系 1 DDD和中台的本质 领域驱动设计(DDD)和中台在企业架构中有着密切的关系。DDD的本质在于通过对业务领域的深入分析和建模,构建高内聚、低耦合的系统。而中台则是对企业核心业务能力的抽象和封装,以实现…...
![](https://img-blog.csdnimg.cn/direct/e6b08d3e83a44f35a433e3f788fd97d4.png)
【ACM出版,马来西亚-吉隆坡举行】第四届互联网技术与教育信息化国际会议 (ITEI 2024)
作为全球科技创新大趋势的引领者,中国不断营造更加开放的科技创新环境,不断提升学术合作的深度和广度,构建惠及各方的创新共同体。这是对全球化的新贡献,是构建人类命运共同体的新贡献。 第四届互联网技术与教育信息化国际学术会议…...
![](https://www.ngui.cc/images/no-images.jpg)
走进IT的世界
引言 随着高考的结束,对于即将踏入IT(信息技术)领域的新生而言,这个假期不仅是放松身心的时间,更是提前规划、深化专业知识、为大学生活奠定坚实基础的宝贵机会。以下是一份详尽的高考假期预习与规划指南,…...
![](https://www.ngui.cc/images/no-images.jpg)
Linux 时区文件编译器 zic【man 8 zic】
1. NAME(名) zic - 时区编译器 2. SYNOPSIS(概要) zic [-v] [-d directory] [-l localtime] [-p posixrules] [-L leapsecondfilename] [-s] [-y command] [filename ...]3. DESCRIPTION(函数描述) zic…...
![](https://img-blog.csdnimg.cn/direct/1159eb3a6082446bba2631ffec37a3af.png)
Springboot下使用Redis管道(pipeline)进行批量操作
之前有业务场景需要批量插入数据到Redis中,做的过程中也有一些感悟,因此记录下来,以防忘记。下面的内容会涉及到 分别使用for、管道处理批量操作,比较其所花费时间。 分别使用RedisCallback、SessionCallback进行Redis pipeline …...
![](https://www.ngui.cc/images/no-images.jpg)
Vue技巧大揭秘:自定义指令的力量与应用
引言 自定义指令就像是给予开发者的一把魔法钥匙,它能够打开DOM操作的新世界,按我的理解就是把对DOM操作的逻辑进行封装 全局注册与局部注册 全局注册 定义: 全局注册意味着自定义指令在Vue实例创建之前通过Vue.directive()方法注册&…...
![](https://img-blog.csdnimg.cn/img_convert/a7512f066083c9aaede2f36f59c9799e.jpeg)
HR人才测评,如何考察想象力?
什么是想象力? 想象力是指,人们通过在已有物质的基础上,通过大脑想象、加工、创造出新事物的能力,举一个非常简单的例子,在提到鸟这种生活的时候,大家会联想到各种各样不同鸟的品种。 在企业招聘中常常应…...
![](https://www.ngui.cc/images/no-images.jpg)
Git命令远程分支的合并和本地分支的同步
天行健,君子以自强不息;地势坤,君子以厚德载物。 每个人都有惰性,但不断学习是好好生活的根本,共勉! 文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。…...
![](https://img-blog.csdnimg.cn/img_convert/53d1d8bd9ee32595ce92a5c897742086.png)
墨烯的C语言技术栈-C语言基础-003
三.数据类型 1.char // 字符数据型 2.short // 短整型 3.int // 整型 4.long // 长整型 5.long long // 更长的整型 6.float // 单精度浮点数 7.double // 双精度浮点数 为什么写代码? 为了解决生活中的问题 购物,点餐,看电影 为什么有这么多类型呢? 因为说的话都是字符型…...
![](https://img-blog.csdnimg.cn/direct/21e8b8fb35944526a540a0c7445e2de5.png)
RpcRrovider分发rpc服务(OnMessage和Closure回调)
目录 1.完善rpcprovider.cc的OnConnection 2.完善rpcprovider.cc的OnMessage 3.完整rpcprovider.h 4.完整rpcprovider.cc 这篇文章主要完成,protobuf实现的数据序列化和反序列化。 1.完善rpcprovider.cc的OnConnection rpc的请求是短连接的,请求一次…...
![](https://img-blog.csdnimg.cn/direct/f7b43179dd63462db853a7ea120eae29.png)
分解+降维+预测!多重创新!直接写核心!EMD-KPCA-Transformer多变量时间序列光伏功率预测
分解降维预测!多重创新!直接写核心!EMD-KPCA-Transformer多变量时间序列光伏功率预测 目录 分解降维预测!多重创新!直接写核心!EMD-KPCA-Transformer多变量时间序列光伏功率预测效果一览基本介绍程序设计参…...
![](https://img-blog.csdnimg.cn/direct/018a41ef61674add840192ea4e55491a.png)
【Python】MacBook M系列芯片Anaconda下载Pytorch,并开发一个简单的数字识别代码(附带踩坑记录)
文章目录 配置镜像源下载Pytorch验证使用Pytorch进行数字识别 配置镜像源 Anaconda下载完毕之后,有两种方式下载pytorch,一种是用页面可视化的方式去下载,另一种方式就是直接用命令行工具去下载。 但是由于默认的Anaconda走的是外网&#x…...
![](https://www.ngui.cc/images/no-images.jpg)
自定义控件动画篇(四)ObjectAnimator的使用
ObjectAnimator 是 Android 属性动画框架中的一个重要组件,它允许你针对特定属性的值进行动画处理。与 ValueAnimator 相比,ObjectAnimator 更专注于 UI 组件,可以直接作用于视图的属性,如位置、尺寸、透明度等,而无需…...
![](https://www.ngui.cc/images/no-images.jpg)
实现List接口的ArrayList和LinkedList
package study;import java.util.*;public class day01_list {public static void main(String[] args) {// <Integer> 这个尖括号表示的是 Java 的泛型(Generics)// 泛型是 Java 5 引入的一项特性,它允许你在 类、接口和方法 中使用类…...
![](https://img-blog.csdnimg.cn/direct/0087a33097494350a56c9f66abc942cf.png)
下拉选择输入框(基于elment-ui)
最近在需求中,需要有一个下拉选择功能,又得可以输入,在 element-ui 官网找了,发现没有适合的,然后在修炼 cv 大法的我,也在网上看了一下,但是也都感觉不合适,所以就自己写了两个&…...
![](https://www.ngui.cc/images/no-images.jpg)
CPP入门:日期类的构建
目录 1.日期类的成员 2.日期类的成员函数 2.1构造和析构函数 2.2检查日期合法 2.3日期的打印 2.4操作符重载 2.4.1小于号 2.4.2等于号 2.4.3小于等于号 2.4.4大于号 2.4.5大于等于号 2.4.6不等号 2.4.7加等的实现 2.4.8加的实现 2.4.9减去一个天数的减等实现 2.4.10…...
![](https://img-blog.csdnimg.cn/direct/98d8c4032cb441b6a484a7ec88e8c098.png#pic_center)
springboot学习,如何用redission实现分布式锁
目录 一、springboot框架介绍二、redission是什么三、什么是分布式锁四、如何用redission实现分布式锁 一、springboot框架介绍 Spring Boot是一个开源的Java框架,由Pivotal团队(现为VMware的一部分)于2013年推出。它旨在简化Spring应用程序…...
![](https://img-blog.csdnimg.cn/direct/e6453407ac3a496e869b4a1fe81b852c.jpeg)
【MySQL】如果表被锁可以尝试看一下事务
今天在MySQL中删除表的时候,发现无法删除,一执行drop,navicat就卡死。 通过 SHOW PROCESSLIST显示被锁了 kill掉被锁的进程后依旧被锁 最后发现是由于存在为执行完的事务 SELECT * FROM INFORMATION_SCHEMA.INNODB_TRX; kill掉这些事务以…...
![](https://img-blog.csdnimg.cn/img_convert/b303e580ee166410225e608210d4cb17.png)
Datawhale - 角色要素提取竞赛
文章目录 赛题要求一、赛事背景二、赛事任务三、评审规则1.平台说明2.数据说明3.评估指标4.评测及排行 四、作品提交要求五、 运行BaselineStep1:下载相关库Step2:配置导入Step3:模型测试Step4:数据读取Step5:Prompt设…...
![](https://img-blog.csdnimg.cn/direct/531165c3ae494a6ea813e245d31082c8.gif#pic_center)
【Sql-驯化】sql中对时间的处理方法技巧总结
【Sql-驯化】sql中对时间的处理方法技巧总结 本次修炼方法请往下查看 🌈 欢迎莅临我的个人主页 👈这里是我工作、学习、实践 IT领域、真诚分享 踩坑集合,智慧小天地! 🎇 免费获取相关内容文档关注:微信公众…...
![](https://img-blog.csdnimg.cn/img_convert/4c14968dc27c3a28db0a2e56121df4d3.png)
TFD那智机器人仿真离线程序文本转换为现场机器人程序
TFD式样那智机器人离线程序通过Process Simulation、DELMIA等仿真软件为载体给机器人出离线,下载下来的文本程序,现场机器人一般是无法导入及识别出来的。那么就需要TFD on Desk TFD控制器来进行转换,才能导入现场机器人读取程序。 导入的文…...
![](https://img-blog.csdnimg.cn/direct/3a084f261be142fb8bc29eb8d405f1d7.png)
贪心+后缀和,CF 1903C - Theofanis‘ Nightmare
一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 1903C - Theofanis Nightmare 二、解题报告 1、思路分析 我们任意一种分组其实都是若干个后缀和相加 比如我们分成了三组,第一组的数被加了一次,第二组的数被加了两次,第…...
![](https://img-blog.csdnimg.cn/direct/7146e8069d1f4c698d4af3db828999cf.png)
10分钟完成微信JSAPI支付对接过程-JAVA后端接口
引入架包 <dependency><groupId>com.github.javen205</groupId><artifactId>IJPay-WxPay</artifactId><version>${ijapy.version}</version></dependency>配置类 package com.joolun.web.config;import org.springframework.b…...
![](https://img-blog.csdnimg.cn/img_convert/bdf2596e089f6bd3be69c47510ac55e0.jpeg)
如何寻找一个领域的顶级会议,并且判断这个会议的影响力?
如何寻找一个领域的顶级会议,并且判断这个会议的影响力? 会议之眼 快讯 很多同学都在问:学术会议不是期刊,即使被SCI检索,也无法查询影响因子。那么如何知道各个领域的顶级会议,并对各个会议有初步了解呢…...
![](https://img-blog.csdnimg.cn/img_convert/7e18f3366008d1af775bb218d90b33d0.jpeg)
真的假不了,假的真不了
大家好,我是瑶琴呀,拥有一头黑长直秀发的女程序员。 最近,17岁的中专生姜萍参加阿里巴巴 2024 年的全球数学竞赛,取得了 12 名的好成绩,一时间在网上沸腾不止。 从最开始的“数学天才”,到被质疑ÿ…...
![](https://img-blog.csdnimg.cn/direct/79dc297ba3554935bdf4b9f8b6b1da12.png)
看完这篇文章你就知道什么是未来软件开发的方向了!即生成式AI在软件开发领域的革新=CodeFlying
从最早的UGC(用户生成内容)到PGC(专业生成内容)再到AIGC(人工智能生成内容)体现了web1.0→web2.0→web3.0的发展历程。 毫无疑问UGC已经成为了当前拥有群体数量最大的内容生产方式。 同时随着人工智能技术…...
![](https://img-blog.csdnimg.cn/direct/e82d4f1cd63841b096def2d887fdf384.gif?#pic_center)
HTML5五十六个民族网站模板源码
文章目录 1.设计来源高山族1.1 登录界面演示1.2 注册界面演示1.3 首页界面演示1.4 中国民族界面演示1.5 关于高山族界面演示1.6 联系我们界面演示 2.效果和源码2.1 动态效果2.2 源代码2.3 源码目录 源码下载 作者:xcLeigh 文章地址:https://blog.csdn.ne…...
![](https://img-blog.csdnimg.cn/direct/a87e66e8c73b4436825b10a58750c666.png#pic_center)
Linux_fileio实现copy文件
参考韦东山老师教程:https://www.bilibili.com/video/BV1kk4y117Tu?p12 目录 1. 通过read方式copy文件2. 通过mmap映射方式copy文件 1. 通过read方式copy文件 copy文件代码: #include <sys/types.h> #include <sys/stat.h> #include <…...
![](https://img-blog.csdnimg.cn/direct/4459e235d9254bf6bcd4978013268866.png#pic_center)
【JavaEE精炼宝库】多线程进阶(2)synchronized原理、JUC类——深度理解多线程编程
一、synchronized 原理 1.1 基本特点: 结合上面的锁策略,我们就可以总结出,synchronized 具有以下特性(只考虑 JDK 1.8): 开始时是乐观锁,如果锁冲突频繁,就转换为悲观锁。 开始是轻量级锁实现ÿ…...
![](https://img-blog.csdnimg.cn/direct/b723f2a2b32140de857cb06e4dd4b76e.gif)
【Linux进程通信】使用匿名管道制作一个简单的进程池
进程池是什么呢?我们可以类比内存池的概念来理解进程池。 内存池 内存池是在真正使用内存之前,先申请分配一定数量的、大小相等(一般情况下)的内存块留作备用。当有新的内存需求时,就从内存池中分出一部分内存块,若内存块不够再继…...
![](https://img-blog.csdnimg.cn/direct/2658bb70b49e4f8d8118c05a1b8a4800.png)
Django 多对多关系
多对多关系作用 Django 中,多对多关系模型的作用主要是为了表示两个模型之间的多对多关系。具体来说,多对多关系允许一个模型的实例与另一个模型的多个实例相关联,反之亦然。这在很多实际应用场景中非常有用,比如: 博…...
![](https://img-blog.csdnimg.cn/img_convert/18b3d5ab08c03bf5d5191d671b8ce78a.png)
构建 Audio Unit 应用程序
构建 Audio Unit 应用程序 构建 Audio Unit 应用程序从选择设计模式开始I/O Pass ThroughI/O Without a Render Callback FunctionI/O with a Render Callback FunctionOutput-Only with a Render Callback Function其他设计模式 构建应用程序配置 audio session指定 audio uni…...
![](https://www.ngui.cc/images/no-images.jpg)
JavaScript 实用技巧
1. 使用 const 和 let 替代 var 在 ES6 之前,我们通常使用 var 声明变量。但如今,推荐使用 const 和 let,因为它们具有块级作用域,可以避免很多潜在的问题。 const PI 3.14; // 常量,无法重新赋值 let age 25; // …...
![](https://img-blog.csdnimg.cn/direct/b01f90c44e0048588aa537d7cc05d564.png#pic_center)
Python协作运动机器人刚体力学解耦模型
🎯要点 🎯腿式或固定式机器人模型 | 🎯网格、点云和体素网格碰撞检测 | 🎯正反向运动学和动力学 | 🎯机器人刚体力学计算 | 🎯编辑参考系姿势和路径 | 🎯软件接口实体机器人模拟 | Ἲ…...
![](https://img-blog.csdnimg.cn/img_convert/a5061b0f13ce873a07ecc2e2ddc32cc0.png)
可重入锁思想,设计MQ迁移方案
如果你的MQ消息要从Kafka切换到RocketMQ且不停机,怎么做?在让这个MQ消息调用第三方发奖接口,但无幂等字段又怎么处理?今天小傅哥就给大家分享一个关于MQ消息在这样的场景中的处理手段。 这是一种比较特例的场景,需要保…...
![](https://img-blog.csdnimg.cn/direct/ebba10a4f02d4b8e9bca803483d6e08f.png)
Redis安装与使用
目录 1、介绍 1、redis的特点: 2、缓存 2、安装Redis 1、安装单机版redis 2、redis-cli命令参数 3、清空数据库的两种方式和作用域: 4、redis的增删查改命令 5、redis的查看所有分类命令 6、redis过期时间与控制键的行为 7、redis的相关工具 1、介绍 r…...
![](https://www.ngui.cc/images/no-images.jpg)
base64字符串空格问题
客户端使用的Content-Type为application/x-www-form-urlencoded时,字符串中出现了空格,base64解码时出错了,因为原来的字符有号, Spring Boot 对于Content-Type为application/x-www-form-urlencoded的HTTP请求,默认情…...
![](https://img-blog.csdnimg.cn/6aa685942b77487a82ba2a55ae150914.png#pic_center)
【BES2500x系列 -- RTX5操作系统】深入探索CMSIS-RTOS RTX -- 同步与通信篇 -- 消息队列和邮箱处理 --(四)
💌 所属专栏:【BES2500x系列】 😀 作 者:我是夜阑的狗🐶 🚀 个人简介:一个正在努力学技术的CV工程师,专注基础和实战分享 ,欢迎咨询! Ὁ…...
![](https://img-blog.csdnimg.cn/direct/c3919893842a43dca9edd13f3d86c480.png)
电信NR零流量小区处理
【摘要】随着目前网络建设逐步完善,5G用户的不断发展,针对零流量小区的分析及处理存在着必要性,零流量小区的出现既是用户分布及行为的直观体现,也是发展用户的一个指引,同时也能发现设备的一些故障。一个站点的能够带…...
![](https://img-blog.csdnimg.cn/img_convert/b915f63f606a9349987370cb11a6af4b.png)
ArcTs布局入门03——层叠布局(Stack)
如果你也对鸿蒙开发感兴趣,加入“Harmony自习室”吧! 扫描下面的二维码关注公众号。 1、概述 叠布局(StackLayout)用于在屏幕上预留一块区域来显示组件中的元素,提供元素可以重叠的布局。层叠布局通过Stack容器组件实…...
![](https://img-blog.csdnimg.cn/direct/eec973fc687e455ea9ced44dbfe04c9f.png)
C语言之线程的学习
线程属于某一个进程 共同点:都能并发 线程共享变量,进程不共享。 多线程任务中,其中某一个线程调用了exit了,其他线程会跟着一起退出 如果是特定的线程就调用pthread_exit 失败返回的是错误号 下面也是...
![](https://img-blog.csdnimg.cn/direct/822bc43dab564cda915f950f34419429.png)
HT8691 内置升压模块的D类音频功率放大器芯片IC
一般描述 HT8691是一款内置升压模块的D类音频功率放大器。内置的升压模块可通过外置电阻调节升压值,即使是锂电池供电,在升压至6.5V时,10%THDN,4Ω负载条件下能连续输出5.5W功率;升压至7V,3Ω负载条件下则能连续输出7.0W功率。其支持外部设置…...
![](https://img-blog.csdnimg.cn/img_convert/400c88187e65391ab2df8f8bc4bec9f4.png)
和小红书一起参会! 了解大模型与大数据融合的技术趋势
在过去的两年中,“大模型”无疑成为互联网行业的焦点话题,曾经炙手可热的大数据架构似乎淡出公众视野。然而,大数据领域并未停滞不前,反而快速演进,传统依赖众多开源组件的大数据平台正逐步过渡到以融合与简化为核心特…...
![](https://www.ngui.cc/images/no-images.jpg)
【vocabulary in use (elementary)】7 Feeling
happy 高兴 sad 伤心 angry 生气 upset 丧气 cold 冷 hot 热 thirsty 口渴 hungry 饿 well 很好 ill 生病 tired 累了 surprised 惊讶 关于喜欢的表达: like to do 偶尔一次喜欢 like doing 一直喜欢的 outdoor activities 户外运动 be keep on doing 坚持做 be fo…...
![](https://img-blog.csdnimg.cn/direct/02e021def9164895a4120b50011e68e7.jpeg)
Keil5 ST-LINK setting闪退问题解决
1. 官网下载新版驱动文件 MDK uVision crashes when using ST-Link debugger 2. 解压替换 STLinkUSBDriver6.1.2.0Signed 我的库文件目录: D:\Tool\Keil5\ARM\STLink...
![](https://www.ngui.cc/images/no-images.jpg)
熟练掌握Docker及linux常用命令排查线上问题。熟悉Git, Maven等项目管理及构建工具,熟悉微服务中基于Jenkins的CI/CD
掌握Docker、Linux命令、项目管理及构建工具,以及CI/CD流程是现代软件开发和运维的关键技能。以下是对这些技能的概述和一些实践建议: ### Docker - **概述**:Docker是一个开源的容器化平台,允许开发者打包应用及其依赖到一个可移…...
![](https://img-blog.csdnimg.cn/img_convert/8350a41ad3190f1d2627ffafc41a2019.jpeg)
78.Vue 3 重用性模态框组件
模态框是大多数 Web 应用程序中的基本构建块。虽然最初实现起来可能看起来有点棘手,但实际上,使用 Vue 和一些 Flexbox 技巧,这不仅可行,而且非常简单。 让我们一起实现一个基础的模态框组件。 架构如下: AppModal.vue…...
![](https://img-blog.csdnimg.cn/direct/1f484a373ae74e239dcb4b203fc47c31.png)
《昇思25天学习打卡营第9天|onereal》
继续学习昨天的 基于MindNLPMusicGen生成自己的个性化音乐 生成音乐 MusicGen支持两种生成模式:贪心(greedy)和采样(sampling)。在实际执行过程中,采样模式得到的结果要显著优于贪心模式。因此我们默认启…...
![](https://www.ngui.cc/images/no-images.jpg)
Perl 语言开发(七):哈希和关联数组
目录 1. 哈希与关联数组的概述 2. 哈希的基本操作 2.1 创建哈希 2.2 访问哈希值 2.3 添加和修改哈希值 2.4 删除哈希值 2.5 检查哈希中是否存在某个键 3. 迭代哈希 3.1 使用 keys 和 values 3.2 使用 each 4. 复杂数据结构中的哈希 4.1 哈希的数组 4.2 哈希的哈希…...
![](https://img-blog.csdnimg.cn/direct/cdbece30491345d08f56b87701306b6a.png)
云计算【第一阶段(26)】Linux网络设置
一、查看网络配置 1.查看网络接口信息ifconfig 查看所有活动的网络接口信息 2.ifconfig命令 查看指定网络接口信息 ifconfig 网络接口 (1)第一行:以太网卡的名字 ens33其中en代表以太网卡, centos6的是eth0, e…...
![](https://i-blog.csdnimg.cn/direct/4f3c8a82bf7b4680ae2c5a37d6da52a3.png#pic_center)
PMP–知识卡片--PDCA循环
记忆 PDCA:计划执行检查调整,计划观察动作;plan do check action 定义 PDCA循环的含义是将质量管理分为四个过程,即计划(Plan)、执行(Do)、检查(Check)、处…...
![](https://img-blog.csdnimg.cn/img_convert/c7fa3a998f7940b8dd251718c2cf041e.png)
MacOS miniconda安装方法
打开macos “终端” 应用 执行命令 mkdir -p ~/miniconda3curl https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-latest-MacOSX-arm64.sh -o ~/miniconda3/miniconda.shbash ~/miniconda3/miniconda.sh -b -u -p ~/miniconda3rm -rf ~/miniconda3/mini…...
![](https://img-blog.csdnimg.cn/direct/42fa0027c9344e7e8e6f246caa40a264.png)
flutter:监听路由的变化
问题 当从路由B页面返回路由A页面后,A页面需要进行数据刷新。因此需要监听路由变化 解决 使用RouteObserver进行录音监听 创建全局变量,不在任何类中 final RouteObserver<PageRoute> routeObserver RouteObserver<PageRoute>();在mai…...
![](https://www.ngui.cc/images/no-images.jpg)
TRILL简介
介绍TRILL的定义及目的。 定义 TRILL(Transparent Interconnection of Lots of Links)是一种把三层链路状态路由技术应用于二层网络的协议。TRILL通过扩展IS-IS路由协议实现二层路由,可以很好地满足数据中心大二层组网需求,为数据中心业务提供解决方案…...
![](https://www.ngui.cc/images/no-images.jpg)
AI苦工卷向高学历
美国人马特拥有通信博士学位,他最近喜提一份自由职业:成为Scale AI公司的一员,在家训练AI模型。“通信博士”“训练AI模型”,马特是不是成了一名光荣的AI程序员?事实并非如此。马特的工作很无聊:他在Scale AI的系统中“接活”,以用户的角度浏览AI模型给用户的各种回复,判…...
![](https://www.ngui.cc/images/no-images.jpg)
嘉兴燃气09908与嘉兴管网公司订立天然气供应框架协议
智通财经APP讯,嘉兴燃气发布公告,于2024年5月23日,该公司(作为供应商)与嘉兴管网公司作为(作为买方)订立天然气供应框架协议。根据天然气供应框架协议,嘉兴管网公司与该公司可不时就该公司于2024年5月23日至2027年3月31日期间向嘉兴管网公司供应天然气订立最终协议,惟须遵…...
![](https://img-blog.csdnimg.cn/direct/159ea2a69aef4a438707d28d7d601946.png)
Linux Tcpdump抓包入门
Linux Tcpdump抓包入门 一、Tcpdump简介 tcpdump 是一个在Linux系统上用于网络分析和抓包的强大工具。它能够捕获网络数据包并提供详细的分析信息,有助于网络管理员和开发人员诊断网络问题和监控网络流量。 安装部署 # 在Debian/Ubuntu上安装 sudo apt-get install…...
![](https://img-blog.csdnimg.cn/direct/c457c4ee42ca4c0e83e99643051b9fd4.png)
数据结构 | 详解二叉树——堆与堆排序
🥝堆 堆总是一棵完全二叉树。 大堆:父节点总是大于子节点。 小堆:父节点总是小于子节点。 注意:1.同一个节点下的两个子节点并无要求先后顺序。 2.堆可以是无序的。 🍉堆的实现 🌴深度剖析 1.父节点和子…...
![](https://img-blog.csdnimg.cn/direct/03f8a404ec0c41d98502267b28de8a96.gif)
100个 Unity小游戏系列五 -Unity 抽奖游戏专题三老虎机游戏
一、演示效果 二、知识点讲解 2.1 布局 public void CreateItems(SlotsData[] slotsData){isInited false;slotsPrizeList new List<SlotsData>();for (int i 0; i < slotsData.Length; i){var item slotsData[i];slotsPrizeList.Add(item);}float bottomY -it…...
![](https://img-blog.csdnimg.cn/direct/7cea911f53c94fb488598d8fbe6a01da.png)
React18 apexcharts数据可视化之甜甜圈图
03 甜甜圈图 apexcharts数据可视化之甜甜圈图。 有完整配套的Python后端代码。 本教程主要会介绍如下图形绘制方式: 基本甜甜圈图个性图案的甜甜圈图渐变色的甜甜圈图 面包圈 import ApexChart from react-apexcharts;export function DonutUpdate() {// 数据…...