MySQL优化(1)执行计划explain中type属性详解
系列文章目录
- 1.初始化测试数据
- 1.初始化表格(user表)
- 2.初始化表格(product表)
- 3.初始化表格(user表数据初始化)
- 4.初始化表格(product表函数)
- 5.初始化表格(product表数据初始化)
- 2.连接类型
- 1.all
- 2.index
- 3.range
- 4.ref
- 5.ref_eq
- 6.const
1.初始化测试数据
1.初始化表格(user表)
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (`id` int(18) NOT NULL AUTO_INCREMENT,`product_no` varchar(30) DEFAULT NULL,`name` varchar(255) DEFAULT NULL,PRIMARY KEY (`id`),UNIQUE KEY `product_no_index` (`product_no`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8;
2.初始化表格(product表)
DROP TABLE IF EXISTS `xxx_audit_order`;
CREATE TABLE `xxx_audit_order` (`product_no` varchar(30) NOT NULL,`xxx_channel_code` int(30) DEFAULT NULL,`business_no` varchar(30) DEFAULT NULL,`xxx_product_id` int(30) DEFAULT NULL,`xxx_product_name` varchar(30) DEFAULT NULL,`xxx_audit_no` varchar(30) DEFAULT NULL,`xxx_audit_status` int(30) DEFAULT NULL,`inspection_report_no` varchar(30) DEFAULT NULL,`audit_report_no` varchar(30) DEFAULT NULL,`re_audit_count` int(30) DEFAULT NULL,`inspector_id` int(30) DEFAULT NULL,`remark` varchar(30) DEFAULT NULL,`delete_dt` int(30) DEFAULT NULL,`create_by` int(18) DEFAULT NULL,`create_dt` int(18) DEFAULT NULL,`update_by` int(11) DEFAULT NULL,`update_dt` datetime DEFAULT NULL,`xxx_link` varchar(30) DEFAULT NULL,`service_standard_no` varchar(30) DEFAULT NULL,`depth_inspection` int(30) DEFAULT NULL,`execute_channel` int(30) DEFAULT NULL,`seller_type` int(30) DEFAULT NULL,PRIMARY KEY (`product_no`),KEY `xxx_audit_no_index` (`xxx_audit_no`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
3.初始化表格(user表数据初始化)
INSERT INTO `test`.`user` (`id`, `product_no`, `name`) VALUES ('1', 'C0512201907191455553490', '王乐');
INSERT INTO `test`.`user` (`id`, `product_no`, `name`) VALUES ('12', NULL, 'wqe');
4.初始化表格(product表函数)
新建函数生成100万条数据,便于测试查询性能。
DROP PROCEDURE if EXISTS BatchInsert;
delimiter $$
CREATE PROCEDURE BatchInsert(IN initId INT, IN loop_counts INT)
BEGINDECLARE Var INT;DECLARE ID INT;SET Var = 0;SET ID = initId;set autocommit=0; -- 关闭自动提交事务,提高插入效率WHILE Var < loop_counts DOINSERT INTO `xxx_audit_order` (`product_no`,`xxx_channel_code`,`business_no`,`xxx_product_id`,`xxx_product_name`,`xxx_audit_no`,`xxx_audit_status`,`inspection_report_no`,`audit_report_no`,`re_audit_count`,`inspector_id`,`remark`,`delete_dt`,`create_by`,`create_dt`,`update_by`,`update_dt`,`xxx_link`,`service_standard_no`,`depth_inspection`,`execute_channel`,`seller_type`) VALUES (CONCAT('20220704', 100000000000 + ID),106,'RS20190719143225916727',26958,'荣耀 Play',CONCAT('C0', 512201907191454553491 + ID),FLOOR(RAND()*10) % 4,'R1152109544189558784','R1152216911870734336',2,0,null,0,6532,UNIX_TIMESTAMP() + ID ,0,Now(),FLOOR(RAND()*10) % 3,'',0,1,null);SET ID = ID + 1;SET Var = Var + 1;END WHILE;COMMIT;
END$$;delimiter ; -- 界定符复原为默认的分号
5.初始化表格(product表数据初始化)
CALL BatchInsert(1, 1000000);
2.连接类型
当使用explain执行计划的时候,会生成类似查询结果的数据。其中的type列尤为重要,在MySQL官网中称之为join type,连接类型。表示查询语句在MySQL引擎中查询的扫描类型,如全表扫描等,是sql优化的一个重要指标。
1.all
表示全表扫描,表示查询语句在查询数据的时候会将一个表里面的全部数据都轮询一遍,然后取出所需要的数据,也就是sql语句其实只是起到一个筛选的作用。在我们需要查询一张表里面的全部的数据的时候这样做是可以的,但在做除此之外的所有的查询的时候全表扫描的可优化场景是相当之多的。
EXPLAIN SELECT business_no from xxx_audit_order WHERE xxx_audit_no = "20220704100000000009"
2.index
只是另外一种类型的全表扫描。这种查询在大多数情况下效率比全表扫描低,因为走完索引之后然后会回表查询。但是在排序的情况下,index可能比all搞笑,但前提是排序是根据表主键排序。因为按照索引扫描全表的数据是有序的
如果一定要比效率,只需要获取这个表的数据并且排序便可以看出来谁比谁效率高了。
-- 排序字段为非主键字段
SELECT * from xxx_audit_order ORDER BY xxx_audit_no
-- 排序字段为主键字段
SELECT * from xxx_audit_order ORDER BY product_no
3.range
range指的是有范围的索引扫描,相对于index的全索引扫描,它有范围限制,因此要优于index。关于range比较容易理解,需要记住的是出现了range,则一定是基于索引的。同时除了显而易见的between,and以及’>‘,’<'外,in和or也是索引范围扫描
4.ref
查找条件列使用了索引而且不为主键和unique。其实,意思就是虽然使用了索引,但该索引列的值并不唯一,有重复。这样即使使用索引快速查找到了第一条数据,仍然不能停止,要进行目标值附近的小范围扫描。但它的好处是它并不需要扫全表,因为索引是有序的,即便有重复值,也是在一个非常小的范围内扫描。下面为了演示这种情形,给employee表中的name列添加一个普通的key(值允许重复)
5.ref_eq
使用了主键或者唯一性索引进行查找的情况。一般来说,ref_eq类型多半会表示为const,这个不重要
6.const
主键放置到where后面作为条件查询。效率最高
相关文章:
【生活日记1】初见博客园
你好博客园!!!!从大学起就已开始接触博客园,那时候基本上都在这里找相关的技术文档和教程。那时候对编程计算机相关的知识感兴趣一些,可惜自己的专业并不是计算机相关专业,自己是机体一体化专业毕业,那时候不懂学什么专业才好,就是想学点有技术含量的比较好就业!!!…...
整理C语言预处理过程语法的实用方法与技巧
预处理 目录预处理一、宏定义数值宏常量字符串宏常量用define宏定义注释符号?程序的编译过程预处理中宏替换和去注释谁先谁后?如何写一个不会出现问题的宏函数do-while-zero结构do-while-zero的评价宏定义中的空格宏只能在main函数上面定义吗?宏的作用范围#undef宏替换是在函…...
spring实验
...
MJUCTF—WP
1.猫娘 点开发现有两个文件, 一个加密压缩包, 一个word文档 点开word发现是兽音加密, 点开在线网站进行解密# 得到一段文本, 先进行分割 小小年内则伏勤, 阵阵寒风刺骨寒。 是处寂寞无人问, 一个身影自徘徊。 个人的技艺超群, 福泽润物春意暖, 瑞气盈盈岁月新, 控制人生如棋…...
2024 年运动会游记
2024 年运动会游记\(4 \times 100\) 卫冕了。 咕了。...
【Modbus】转发:Modbus通讯模拟仿真环境的搭建
文章目录一、概要二、所需工具介绍三、搭建虚拟仿真环境1.Modbus RTU虚拟仿真环境搭建1.1.虚拟串口工具(VSPD)使用1.2.虚拟从站工具(ModSim32)使用1.3.虚拟主站工具(Modscan32)使用1.4.更改虚拟从站工具(ModSim32)的Modbus寄存器的值1.5.更改虚拟主站工具(Modscan32)…...
MySQL优化(1)执行计划explain中type属性详解
系列文章目录1.初始化测试数据1.初始化表格(user表)2.初始化表格(product表)3.初始化表格(user表数据初始化)4.初始化表格(product表函数)5.初始化表格(product表数据初始…...
servlet过滤器Filter简要回顾-过滤请求字符编码,/和/*和/**的区别
servlet过滤器Filter简要回顾-过滤请求字符编码,/和/*和/**的区别servlet过滤器1.filter过滤器的含义2.filter过滤器的使用3.测试-过滤字符编码正确响应中文编码3.1 创建servlet用于显示中文字符3.2 自定义过滤器3.3 配置web.xml中的servlet映射以及过滤器请求拦截3.4 运行输出…...
Java链表OJ题
目录1. 删除链表中等于给定值val的所有结点2. 逆置单链表3. 链表的中间结点4. 链表中倒数第k个结点5. 将两个有序链表合并为一个新的有序链表6. 以给定值x为基准将链表分割成两部分7. 判断是否为回文链表8. 两个链表的第一个公共结点9. 判断链表中是否有环10. 链表开始入环的第…...
0、Spring工程构建Spring快速入门Spring配置文件详解注入Sprint相关API
1、Spring工程构建 创建工程项目目录文件夹 IDEA选择项目new一个module 配置案例 aop创建 创建并下载完毕后,点击file选择projert 选择按照的jdk版本 output选择当前目录, 点击右下方apply 选择facets,点击""号选择web 选择当前…...
网络原理之HTTP/HTTPS、TCP、IP四层协议栈
文章目录一、应用层(一)xml协议(二)json协议(三)protobuffer协议(四)HTTP协议1. 抓包工具,fiddler2. HTTP报文格式3. HTTP请求(Request)(1)URL基本…...
CS61B 2021spring HW0
HW 0: A Java Crash Course 文章目录HW 0: A Java Crash CourseA Basic ProgramCreative Exercise 1a: Drawing a TriangleCreative Exercise 1b: DrawTriangleExercise 2、3Optional: Exercise 4Java可视化orz表达积累参考资料这个hw是optional,然后主要是给至少学…...
自动驾驶环境感知——视觉传感器技术
文章目录1. 摄像头的成像原理1.1 单目视觉传感器的硬件结构1.2 单目视觉的成像原理 –小孔成像模型1.3 单目视觉的成像原理 – 像素坐标系1.4 单目视觉三维坐标系转换 – 外参1.5 单目视觉的坐标系转换 – 从世界坐标点到像素坐标1.6 单目视觉的特性2. 视觉传感器的标定2.1 视觉…...
分享148个ASP源码,总有一款适合您
ASP源码 分享148个ASP源码,总有一款适合您 下面是文件的名字,我放了一些图片,文章里不是所有的图主要是放不下..., 148个ASP源码下载链接:https://pan.baidu.com/s/1e2PvBmXxZA8C3IelkP8ZtQ?pwdj7lp 提取码&#x…...
Java线程的生命周期的五种状态
前面在《有关Java多线程的几个概念》(https://blog.csdn.net/helloworldchina/article/details/128753898)讲述了Java线程的生命周期的五种状态。在这里再详述一下线程的5种状态。 在java中,任何对象都要有生命周期,线程也一样&a…...
springboot自定义拦截器的简单使用和一个小例子
springboot自定义拦截器的使用1. 自定义拦截器2. 拦截器登录验证的小demo2.1 配置pom.xml2.2 创建User的bean组件2.3 创建需要的表单页面以及登录成功的页面2.4 编写controller映射关系2.5 自定义拦截器类,实现intercepetor接口2.6注册添加拦截器,自定义…...
APT之木马静态免杀
前言 这篇文章主要是记录手动编写代码进行木马免杀,使用工具也可以免杀,只不过太脚本小子了,而且工具的特征也容易被杀软抓到,指不定哪天就用不了了,所以要学一下手动去免杀木马,也方便以后开发一个只属于…...
设计模式 - 创建型模式_抽象工厂模式
文章目录创建型模式概述Case场景模拟工程模拟早期单机Redis的使用Bad ImplBetter Impl (抽象⼯⼚模式重构代码)定义适配接⼝实现集群适配器接口代理方式的抽象工厂类单元测试小结创建型模式 创建型模式提供创建对象的机制, 能够提升已有代码…...
9、断点调试
文章目录9、断点调试9.1 为什么需要Debug9.2 Debug的步骤1 添加断点2 启动调试3 单步调试工具介绍9.3 多种Debug情况介绍1 行断点2 方法断点3 字段断点4 条件断点5 异常断点6 线程断点7 强制结束9.4 自定义调试数据视图9.5 常见问题【尚硅谷】idea实战教程-讲师:宋红…...
yolo结构介绍
更新中 yolo结构: 这个是针对最早的v5版本1.0进行讲解,现在2022最新版本是V6.2。有一些细节的差别比如Backbone部分Focus倍替换成6*6的Conv,bottleneckCSP替换为C3,Neck部分SPP被替换成SPPF等 Release v1.0 ultralytics/yolov5 (github.com) # parameters nc: 80 # n…...
大数据技术架构(组件)7——Hive:Filter PushDown Cases And Outer Join Behavior
1.2、Filter PushDown Cases And Outer Join Behavior前提:关闭优化器set hive.auto.convertjoinfalse; set hive.cbo.enablefalse;Inner Join:1、Join On中的谓词: 左表下推、右表下推2、Where谓词:左表下推、右表下推-- 第一种情况: join on 谓词 selectt1.user_id,t2.user_i…...
【MySQL】第十二部分 子查询
【MySQL】第十二部分 子查询 文章目录【MySQL】第十二部分 子查询12. 子查询12.1 单行子查询12.2 多行子查询12.3 非相关子查询和相关子查询12.4 EXISTS 与 NOT EXISTS关键字总结12. 子查询 子查询 说白了就是嵌套查询,在一个查询语句中嵌套另外一个查询语句进行内部查询. 子…...
Day08 C++STL入门基础知识五——vector容器(下) 插入删除-数据存取-交换容器-预留空间【全面深度剖析+例题代码展示】
More haste, less speed. 欲速则不达 文章目录1. 承接上文2. 插入操作2.1 函数原型(总括)2.2 尾插尾删2.2.1 操作2.2.2 代码展示2.2.3 测试结果2.3 迭代器插入2.3.1 操作2.3.2 代码展示2.3.3 测试结果2.4 think小思考2.4.1 小疑问2.4.2 思路2.4.3 代码展示2.4.4 测试结果3. 删除…...
打工人必知必会(二)——劳动合同解除
目录 1、劳动合同的解除种类 2、协商解除劳动合同 3、用人单位解除劳动合同 1)过错性解除劳动合同 2)非过错性解除劳动合同 4、经济性裁员解除劳动合同 5、违法解除劳动合同 6、 劳动者解除劳动合同 提前30日以书面形式通知用人单位 员工即时解…...
量化选股——基于多因子模型的量化策略(第1部分—因子测算策略构建)
文章目录1.多因子模型概述2.因子挖掘3.多因子策略4.多因子策略构建基于多因子的策略通用流程Fama-French三因子因子效果测算方法因子测算结论&量化策略构建东西有点多,拆开成多个文章,边写边整合~,应该会分成2部分: 第1部分—…...
(Java高级教程)第四章必备前端基础知识-第三节1:JavaScript简介和基础语法
文章目录一:JavaScript简介(1)JavaScript概述(2)JavaScript特点(3)JavaScript运行过程(4)JavaScript组成(5)JavaScript的引入方式和基本使用&…...
好的质量+数量 = 健康的创作者生态
缘起 CSDN 每天都有近万名创作者发表各种内容, 其中博客就有一万篇左右。 这个数量是非常可喜的,这也是 CSDN 的产品、研发运营小伙伴、和各位博主持续工作的结果。 衡量一个 IT 内容平台,除了数量之外,还有另外一些因素…...
利用Golang可选参数实现可选模式
本文讨论Golang函数可选参数及函数类型,以及如何利用可选函数类型实现可选模式。同时通过构造函数作为示例,实现强大带可选参数的构造函数,让代码更直观、灵活、支持扩展。 从需求开始 可选参数给函数传递额外参数扩展或修改其行为…...
【Git】Git 的基本使用
Git的简介 Git是一个版本管理控制系统(缩写VCS),是一个工具,github或者gitee是git命令行工具的网站化。它可以在任何时间点,将文档的状态作为更新记录保存起来,也可以在任何时间点,将更新记录恢复回来。 git的诞生历…...
MyBatis(一)MyBatis概述
一、什么是框架 ● 在文献中看到的framework被翻译为框架 ● java常用的框架: SSM三大框架:SpingSpringMVCMyBatisSpringBootSpringCloud● 框架其实就是对通用代码的封装,提前写好了一堆接口和类,我们可以在做项目的时候直接引…...
吴恩达机器学习笔记(三)逻辑回归
机器学习(三) 学习机器学习过程中的心得体会以及知识点的整理,方便我自己查找,也希望可以和大家一起交流。 —— 吴恩达机器学习第五章 —— 四、逻辑回归 线性回归局限性 线性回归对于分类问题的局限性:由于离群点…...
[python入门㉞] - python错误和异常处理
目录 ❤ 语法错误 ❤ 异常 ❤ 异常的分类 ❤ 错误异常处理 错误就是Python中的语法错误或者异常(解析错误)。 ❤ 语法错误 语法错误也叫做解析错误,是指python无法正确的识别代码的造成的。根本原因在于人的行为。 解决方法:按照正确的语法进…...
用1行Python代码识别增值税发票,YYDS
大家好,这里是程序员晚枫。 录入发票是一件繁琐的工作,如果可以自动识别并且录入系统,那可真是太好了。 今天我们就来学习一下,如何自动识别增值税发票并且录入系统~ 识别发票 识别发票的代码最简单,只需要1行代码…...
Sharding-JDBC(五)PageHelper分页报错 Can‘t find index: AggregationSelectItem
目录1.详细报错信息:2.问题原因:3.解决方法:3.1)使用MyBatisPlus自带的分页功能3.2)PageHelper ShardingJDBC53.3)PageHelper ShardingJDBC41.详细报错信息: Caused by: org.apache.ibatis.e…...
十六进制转八进制+超大数据处理(蓝桥杯基础练习C/C++)
目录 1 题目要求 2 代码 2.1 以十进制为媒介(不可行) 2.2 以二进制为媒介 3 可能会遇到的难点 4 结论 5 延伸 5.1 超大数据阶乘 5.2 超大数据加法 5.3 以十进制为媒介的进制转换 1 题目要求 2 代码 2.1 以十进制为媒介ÿ…...
蓝桥杯2020省赛python
蓝桥杯2020省赛Python 第一题:门牌制作 用了一个时间复杂度是n的算法,反正是填空题也不会出现TLE的事,只要别太离谱就行了。 利用python 的count函数 res 0 for i in range(1,2021):i str(i)res i.count(2) print(res)答案是2 第二题&…...
kaggle竞赛 | 计算机视觉 | Doodle Recognition Challenge
目录赛题链接赛题背景数据集探索合并多个类别CSV数据集数据建模 (pytorch)赛题链接 https://www.kaggle.com/competitions/quickdraw-doodle-recognition/overview/evaluation 数据集从上述链接中找 赛题背景 Quick,Draw!作为实验性游戏发布ÿ…...
如何设计一个70W在线人数的弹幕系统文章分析
原文地址: 如何设计一个70W在线人数的弹幕系统 1:http包头 一个http数据包请求由4个部分组成:请求行、请求头标、空行、请求数据。 请求行分为了三个部分。请求方法,请求url与http版本。请求头行,由关键字值对组成&…...
基于Android的动漫之家系统的设计与实现
目录 1.课题研究立项依据 2.文献综述 3.课题研究的基本内容及预期目标或成果 4.课题的研究方案 5.研究进度安排 6.主要参考文献 1.课题研究立项依据 目前国家的动漫交流也正处在不断改革、创新的阶段,我国有关部门充分吸取国外优秀的动漫交流模式,…...
流批一体计算引擎-7-[Flink]的DataStream连接器
参考官方手册DataStream Connectors 1 DataStream连接器概述 一、预定义的Source和Sink 一些比较基本的Source和Sink已经内置在Flink里。 1、预定义data sources支持从文件、目录、socket,以及collections和iterators中读取数据。 2、预定义data sinks支持把数据写…...
测试篇(三):测试用例的万能公式、对水杯和登录页面设计测试用例、测试用例的设计方法
目录一、测试用例的万能公式二、对登录页面设计测试用例三、测试用例的设计方法3.1 基于需求的设计方法3.2 等价类3.3 边界值3.4 判定表3.5 正交排列3.6 场景设计法3.7 错误猜测法四、面试真题一、测试用例的万能公式 首先,为"水杯"设计一个测试用例&…...
【进击的算法】基础算法——怎么优雅地控制边界范围
学习范围 : ✔️数组 ✔️边界控制本文作者 : 蓝色学者i 边界控制的艺术前言一、为什么需要控制边界?二、怎么优雅地控制边界?三、令人抓狂的二分查找3.1 题目概述3.2解题思路3.3 解决方案方案一:边界都有效方案二&…...
linux基本功系列之-rpm命令实战
文章目录前言🚀🚀🚀一. rpm命令介绍1.1 RPM包介绍1.2 rpm包的优缺点1.3 rpm包获取方式二. 语法格式及常用选项2.1 RPM安装常用参数2.2 rpm格式介绍三. 应用案例3.1 从本地安装软件包3.2 查询lrzsz的包有没有安装3.3 查询命令是哪个包安装的3.…...
冯诺依曼体系结构及操作系统(OS)的简单认识
文章目录冯诺依曼体系结构操作系统(Operator System)冯诺依曼体系结构 冯诺依曼结构也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储结构。数学家冯诺依曼提出了计算机制造的三个基本原则,即采用二进制逻辑…...
day4 24. 两两交换链表中的节点 ● 19.删除链表的倒数第N个节点 ●160 链表相交 ● 142.环形链表II
两两交换链表中的节点 链表的指针,要仔细画图,搞清楚cur和cur的next在哪里 这个题还是有点绕的,两两一组交换,还有奇偶数要考虑 class Solution { public:ListNode* swapPairs(ListNode* head) {ListNode* dummyhead new ListNo…...
【Linux】目录权限和默认权限
上期介绍了Linux的文件权限,这期我们仔细来说说Linux环境下目录权限和默认权限一、目录权限1.1 进入目录所需的权限我们在进入目录时需要什么样的权限呢?是r、w还是x呢?下面我们一起来验证一下:📋如下我门拥有全部目录…...
kaggle竞赛 | 计算机视觉 | 数字图像基础操作
目录cv2基本操作图片哈希图像数据扩展无监督数据扩展方法监督式数据扩展方法cv2基本操作 import numpy as np import matplotlib.pyplot as plt import cv2img cv2.imread(cat.jpeg) plt.imshow(img)img cv2.imread(cat.jpeg) img cv2.cvtColor(img, cv2.COLOR_BGR2RGB) pl…...
7. 好客租房-项目日常推进ing
7. 好客租房-项目日常推进ing 本章节不涉及大量内容,主要是为了推荐项目代码日常进度而设置, 包括添加mock接口, 添加更新房源接口, 为系统添加缓存. 7.1 为前端系统提供mock服务 往往在项目开发中, 为实现前后端并行开发,后端需要对前端所有的请求都都进行支持。…...
前同事居然因为 Pycharm 的这个功能,即使离职三年也依然经常被请去喝茶~
大家好,我是 哈士奇 ,一位工作了十年的"技术混子", 致力于为开发者赋能的UP主, 目前正在运营着 TFS_CLUB社区。 💬 人生格言:优于别人,并不高贵,真正的高贵应该是优于过去的自己。💬 ὎…...
python使用类装饰器生成函数的使用日志
1 什么是类装饰器 在了解类装饰器之前,建议大家先了解装饰器的概念。 装饰器知识快速入门链接 类装饰器是 Python 中的一种特殊类型的装饰器,它是一个类而不是一个函数。与函数装饰器不同,类装饰器可以在运行时接收参数并返回一个可调用的对…...
有关Android的TextView组件的几个问题
文章目录小结问题及解决参考小结 TextView组件与EditText类似,但有一些不同,理论上TextView是只读的。尝试了让TextView组件可以弹出SetError的提示信息,只读,并不能弹出Android软键盘。 问题及解决 如果需要将TextView组件不能…...
Spring核心模块解析—BeanDifinition。
BeanDifinition前言什么是BeanDefinition?为什么要有BeanDefinition?BeanDifinition重点源码总结前言 Spring中的BeanDifinition在Bean的实例化流程中占有着非常重要的角色,如果你不了解BeanDifinition的话,面试或者学习Bean的生…...
【目标跟踪】------deepsort
目前主流的目标跟踪算法都是基于Tracking-by-Detecton策略,即基于目标检测的结果来进行目标跟踪。DeepSORT运用的就是这个策略,上面的视频是DeepSORT对人群进行跟踪的结果,每个bbox左上角的数字是用来标识某个人的唯一ID号。 Deepsort的前身是sort算法,sort算法的核心是卡尔…...
教你一键生成形如Springboot的高大上banner打印效果
背景 今天闲来无聊,想搞一个类似于Springboot项目启动时打印效果,如下图: 问题解决方案 那这个打印效果怎么实现的呢? 其实,对于这个中效果实现起来也是很简单的。毕竟依托于Springboot强大的框架,任何问…...
RESTful的意义及其使用规则
本文参考: https://javaguide.cn/system-design/basis/RESTfulAPI.html 何为 RESTful API? GET /classes:列出所有班级 POST /classes:新建一个班级RESTful API 可以让你看到 URLHttp Method 就知道这个 URL 是干什么的&…...
Linux产生死锁的必要条件和常见的锁种类
目录前言产生死锁的4个必要条件预防(解决)死锁Linux常见的锁互斥锁(普通锁)自旋锁互斥锁和自旋锁小结递归锁读写锁乐观锁与悲观锁乐观锁和悲观锁小结其他锁(了解)前言 之前面试的时候,有面试官问我产生死锁的(4个)必要条件,这个我之前有了解过ÿ…...
《习近平关于中国式现代化论述摘编》俄文版出版发行
新华社北京5月15日电中共中央党史和文献研究院翻译的《习近平关于中国式现代化论述摘编》一书俄文版,近日由中央编译出版社出版,面向海内外发行。《习近平关于中国式现代化论述摘编》由中共中央党史和文献研究院编辑,收录了习近平同志2012年11月至2023年10月期间围绕中国式现…...
抖音小店有订单后怎么发货?实操分享!发货全流程来了
哈喽~我是电商月月 做无货源抖音小店的店铺在出单后怎么发货?今天我就来给大家解答这个问题,其中的注意事项新手商家可以收藏一下,避免犯错 抖音小店的商品出单后,商家在“管理中心-订单管理”页面就能看见所有待处理的订单 一…...
【Go语言入门学习笔记】Part1.梦开始的地方
一、前言 经过一系列的学习,终于有时间来学习一些新的语言,Go语言在现在还是比较时髦的,多一个技能总比不多的好,故有时间来学一下。 二、配置环境 按照网络中已有的配置方法配置好,本人采用了Jetbrain的Goland&#…...
快速查看字符对应的ASCII码
1、借助gdb查看 打印字符串用双引号括起来打印单个字符用单引号括起来x 表示十六机制d 表示十进制t 表示二进制 2、借助二进制查看软件 第一步:把要查看的字符保存到文本文件中第二步:借助二进制查看工具(比如:Hex Editor Neo&am…...
基于Springboot汽车租赁预约管理系统
一:功能介绍 本系统是Springboot项目采用的技术栈主要有Spring、mybaits、springboot、mysql数据库 功能角色主要分为管理员、超级管理员、用户等几个角色 二:功能截图 三:源码获取...
你会使用那种数据库
常用的数据库可以大致分为关系型数据库(Relational Databases)和非关系型数据库(NoSQL Databases)两大类。 各自领域内广泛使用的数据库系统: 关系型数据库(RDBMS) 1. MySQL: 开源的关系型数…...
使用主机NS记录在cPanel如何添加解析
近期我之前购买了Hostease的域名,并且本身也使用了Hostease的Linux虚拟主机产品,当时时联系咨询了Hostease技术支持帮助操作了域名解析指向了主机,他们当时是将域名默认的4组DNS修改为所属Linux虚拟主机提供的NS记录,但是我现在想要添加我购买…...
V2~V3的变化【秒杀项目】
V2-V3的变化【秒杀项目】 前言版权推荐V2~V3的变化总结流程配置pom.xmlapplication-dev.properties commentErrorCode configurationWebMvcConfiguration emtityItemStockLog mapperItemStockLogMapperItemStockLogMapper.xml controllerOrderController serviceItemServicePro…...
package-lock.json导致npm install安装nyc出现超时错误
一、背景 前端项目在npm install安装依赖,无法下载组件nyc,详细报错信息: npm ERR! code CERT_HAS_EXPIRED npm ERR! errno CERT_HAS_EXPIRED npm ERR! request to https://registry.npm.taobao.org/nyc/download/nyc-13.3.0.tgz?cache0&a…...
WebGL软件的开发框架
WebGL(Web Graphics Library)是一种用于在网页浏览器中实现3D图形渲染的JavaScript API。它允许开发者利用图形处理单元(GPU)来实时渲染复杂的3D场景,从而创建出令人惊叹的交互式体验。在WebGL开发中,有一些…...
冲!哪怕公域拓展流量超卷,数字化转型营销也勇往直前!
在这个数字时代,公域拓展流量的竞争已经激烈到令人咋舌的程度!然而,开利网络蚓链数字化转型营销解决方案经过上千家客户实践告诉我们,即使面对如此残酷的局面,我们也必须勇敢地去面对,利用想得到的合规合法…...
鸿蒙应用开发之调用C++开发代码库3
接着下来,我们仔细分析C++代码的实现,要理解怎么样把ArkTS类型转换为C++类型,并且返回参数值时,怎么从C++的类型转换为ArkTS类型。 要想在ArkTS调用C++的代码,需要把上面的编译器信息打包到应用程序HAP里,当运行的时候,就可以找到加载的对应的声明信息。 我们从JS调用框…...