- 博客(184)
- 资源 (3)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 【mysql】索引性能优化之ICP、MRR、BKA理论加实践
(查询优化)Index Condition Pushdown (指数条件下推)(ICP)ICP是MYSQL使用索引从表中检索行数据的一种优化方式。目标减少从基表中读取操作的数量,从而降低I/O操作。禁用ICP存储引擎会通过遍历索引定位基表中的行,然后返回给Server 层,在去为这些数据进行WHERE 后的条件过滤。开启ICP特性如果部分where 条件能够使用索引中的字段,那么 MySQLServer就会把这部分下推导存储引擎层。存储引擎通过索引过滤,把满足的行从表中读取出。效果决定于存储
2021-05-30 17:30:46
641
1
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 【Redis】redis的安装以及视图化界面
文章目录Redis 的安装视图化界面Redis 的安装此篇我们来用windows安装redis我们到GitHub上下载:下载地址这里我们会发现有很多,我们下载第一个3.2的,然后点击Downloads开始下载我们选在msi的安装包下载完就是这样的,我们直接安装就行点击next点击我接受,next选择要保存在哪个文件中选择端口号,默认为6379向windows防火墙添加异常选择安装路径将Redis安装文件夹添加到PATH环境变量。如果没有添加,那么我们每次启动都要
2020-09-20 13:52:14
1518
4
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 【mysql】哦买噶!多么强大的group by语句
GROUP BY 语句group by语句介绍实例建表 user表(1)基本用法(2)`GROUP BY`语句中的`GROUP_CONCAT`函数()(3)利用 `count`函数来查询性别的总人数(4)`where`语句(5) `SUM` `MAX` `MIN` `AVG` 函数(6)`HAVING ` 子句(7)`WITH ROLLUP` 子句:结尾group by语句介绍GROUP BY 语句根据一个或多个列对结果集进行分组。在分组的列上我们可以使用 COUNT, SUM, AVG,等函数。实例
2020-06-16 17:30:36
461
原创 mach-o file, but is an incompatible architecture (have ‘x86_64‘, need > ‘arm64e‘解决办法
m1芯片解决rocksdb报错
2022-08-24 17:58:23
3822
原创 【Spring Boot】数据校验
本篇主要介绍了springboot中的数据校验,包括Hibernate Validator,JavaBean参数校验,URL参数校验,JavaBean对象级联校验,分组校验和声明自定义校验注解,文中样例都是正确的样例,无需担心跑不通的情况,在阅读后肯定会对小伙伴们有所帮助。
2022-04-20 01:06:15
3388
原创 【Spring Boot】SpringBoot中系统多环境配置
文章目录系统多环境配置1.创建多环境配置文件2. 修改配置文件3. 多环境的切换系统多环境配置在实际项目中,需要面对不同的运行环境,比如开发环境、测试环境、生产环境等,每个运行环境的数据库、Redis服务器等配置都不相同,每次发布测试、更新生产都需要手动修改相关系统配置。这种方式特别麻烦,费时费力,而且出错概率大。Spring Boot为我们提供了更加简单方便的配置方案来解决多环境的配置问题。1.创建多环境配置文件创建多环境配置文件时,需要遵循Spring Boot允许的命名约定来命令,格式为
2022-04-18 17:43:26
9855
原创 【Spring Boot】springboot中自定义配置项
文章目录2. 自定义配置项@valueEnvironment接口@ConfigurationProperties使用配置文件注意事项2. 自定义配置项在项目开发的过程中,经常需要自定义系统业务方面的配置文件及配置项,Spring Boot提供了@value注解、@ConfigurationProperties注解和Environment接口等3种方式自定义配置项。@value在实际项目中,经常需要在配置文件中定义一些简单的配置项,Spring Boot提供@Value注解来设置简单的配置项,默认
2022-04-18 14:43:52
3652
1
原创 【Spring Boot】系统配置文件application.properties和application.yml
主要介绍springboot中properties和yml文件
2022-04-18 14:34:52
3649
原创 【SpringBoot】springboot开发环境热部署
在项目开发调试过程中,我们会频繁地修改后台类文件,导致需要重新编译、重新启动,整个过程非常麻烦,影响开发效率。Spring Boot 做了很好的支持,提供了spring-boot-devtools组件,使得无须手动重启Spring Boot应用即可重新编译、启动项目,大大缩短编译、启动的时间,从而提高开发效率。4.1 devtools实现原理spring-boot-devtools 的核心是两个类加载器(ClassLoader):一个是Base类加载器(Base ClassLoader),负责加载那些
2022-04-18 13:14:35
432
原创 【SpringBoot】springboot中的单元测试
3. 单元测试单元测试在日常项目开发中必不可少,目前流行的有 JUnit 或 TestNG等测试框架。Spring Boot封装了单元测试组件spring-boot-starter-test。引入依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <
2022-04-18 13:09:36
10041
2
原创 【postman】postman批量执行接口测试
我们有时候为了测试会虚拟创建一些用户,这时候我们可能会通过写sql脚本的形式,但如果没有理清增加用户的注意事项等,往往造出来的数据不能用,比较方便的操作就是直接用postman写一个批量调用的脚本。一、 创建测试用例这样我们就会发现有一个测试用例。二、设置全局变量有些情况下,我们需要一些变动的值,就比如我创建用户,我的用户名,邮箱等不能是一层不变的,那么我们可以用一个变量,来改变这些值。在这里有一个小眼睛,来设置我们的变量我们可以加入我们想要的一些变量,比如用户名等,还可以加入一些全局.
2022-03-25 16:15:41
5848
2
原创 go 拉取仓库依赖报错:fatal: could not read Username for ‘https://code.byted.org‘: terminal prompts disabled
文章目录解决方法在我们用 go mod tidy更新项目依赖包的时候,有可能会遇到这个问题,这个主要问题是git没有配置的问题。解决方法在控制台输入以下命令,这个主要是配置我们拉取依赖源是哪一个,添加相应的仓库源vim ~/.gitconfig[user] email = email name = name[url "git@github.com/:"] insteadOf = https://github.com/"还有一种是将ssh替代成https
2022-02-08 17:46:19
3128
原创 【java】统计图表百分比和如何等于百分之百
最近遇到一个问题,各个类型资金占总资金的百分比,计算后客户端以图饼的形式展示。文章目录方法一:利用java中的Bigdecimal 进行统计方法二 差减法方法三 递增加一法方法一:利用java中的Bigdecimal 进行统计代码如下: @Test public void test() { double a = 5, b = 11, c = 13, d = 22, e = 36; long sum = 87; BigDecimal bi.
2021-11-08 16:03:56
1510
原创 【redis】redis 基本数据结构之String
推荐经典的redis书 《Redis 设计与实现》,讲的非常好!简单动态字符串Redis 没有直接使用 C 语言传统的字符串表示,而是自己构建了一种名为简单动态字符串(simple dynamic string,SDS)的抽象类型,并将SDS用作 Redis 的默认字符串表示。SDS的定义每个sds.h/sdshdr结构表示一个SDS值[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5WAlzGGi-1634222389877)(…/images/image.
2021-10-14 22:43:02
378
原创 【apache】ssl证书更新
由于项目的服务ssl证书快要过期,所以现在需要更新证书文章目录什么是SSL证书apache 更新证书重启apache服务扩展什么是SSL证书我们都知道目前互联网安全威胁愈演愈烈,各类入侵、劫持事件层出不穷,欺诈、钓鱼网站比比皆是。https加密传输方案在传输层可有效防止他人截获,同时客户端浏览器的强制验证手段,可有效帮助用户甄别真实网站,避免上当受骗,因此https也成为越来越多的互联网站的标配。其实SSL证书是一种数字签名证书,用于建立网站标识并使用加密技术向网站发送数据。SSL证书由称为证书.
2021-09-05 14:50:31
2568
原创 画图分析:25匹马,每次分5组,几场能挑选出前三
文章目录开始挑选出第一名:挑选出第二名:挑选出第三名开始首先我们有25匹马,分别标记为A1 ~ A5, B1 ~ B5,C1 ~ C5,D1 ~ D5,E1 ~ E5我们竖着去比较,比如A1 ~ E1 为一组,以此类推,我们假设每组按顺序都是A最快,E最慢。挑选出第一名:这5组中,分别会有一个第一名,比如是A1~A5,那么将这5匹在跑一次,选出来一个第一,那这个就是最快的一匹。所以挑选出第一名需要 6 场。挑选出第二名:比如我们将A2看为最快的那么我们需要在五组中挑选第二名,我们会发现,
2021-08-20 23:16:48
605
转载 【docker】docker安装rabbitmq
Docker安装、配置Rabbitmq教程下载RabbitMQ镜像【此处需要注意】注意此处需要安装management的版本才有界面,其他tag的版本是没有管理界面的下载命令:docker pull rabbitmq:management部署启动RabbitMQ部署命令:docker run -d -p 5672:5672 \-p 15672:15672 \--name rabbitmq \rabbitmq:management打开RabbitMQ管理页面默认的管理界面端
2021-08-07 09:40:15
1756
2
原创 【java】BIO
文章目录1 BIO1.1 定义1.2 使用场景1.3 工作机制2 java实现简单数据传输2.1 BIO下的多发和多收机制2.2 BIO模式下接受多个客户端2.3 BIO总结3 伪异步I/O编程3.1 服务端类3.2 线程池类3.3 任务对象类3.4 客户端类3.5 总结4 BIO实现任意文件上传4.1 客户端4.2 服务端4.3 服务端封装类5 java BIO模式下的端口转发思想5.1 服务层5.2 线程对象封装类5.3 客户端馄饨高兴的去面试,最近看了ThreadLocal的原理,知道内存泄漏是怎
2021-08-04 19:46:16
316
原创 【算法】旋转矩阵
说一下今天的面试吧,面试官人挺好的,细心听我讲完了我实习项目,然后,咱们来做道题吧。旋转矩阵,说一下感受吧,其实以前做过的,那还是大一,但今天一做,感觉没啥思路了,确实算法是要每天进行的工作,也意识到算法的重要性。那么来看下旋转矩阵。给你一幅由 N × N 矩阵表示的图像,其中每个像素的大小为 4 字节。请你设计一种算法,将图像旋转 90 度。不占用额外内存空间能否做到?示例 1:给定 matrix =[[1,2,3],[4,5,6],[7,8,9]],原地旋转输入矩阵,使其变为:.
2021-07-26 17:23:23
752
原创 【剑指Office】反转链表
这道题我们有两种解法,遍历链表,将链表数值装入到集合中,根据集合重构链表。但是很明显,这个题考察的点是在链表的指针上,所以我们也是用指针的解法。条件:我们知道,链表的指向都是指向下一个节点,但是如果我们反向指,会导致我们当前节点的下一个指向断开,无法遍历后续元素,例如这张图。所以这里我们应该要定义一个保存后续节点的指针,使得当前指针在找后续节点时可以被找到。我们定义三个指针,分别是前缀指针 pre,当前指针 cur 和后缀指针 next,先让 next 保存当前节点的下一个节点,记录后,进行.
2021-07-22 08:42:48
161
1
原创 【算法】程序员面试经典01.01. 判定字符是否唯一
引言我们会发现这道题下面有一句话,如果你不使用额外的数据结构,会很加分,所以其实根本解法还是用位移运算符,可惜我没了解过这的东西,又一次难受。在做完后看了一个老哥的说法,如果我是面试官我怎么看,确实给了自己很多思考如果我是面试官,我会希望看到什么?可能有点偏题,毕竟这里主要就是做题的地方。。如果我是面试官,会考虑主要考察什么,就我的工作经验看,大多数主要是招聘工程师的,面试者如果什么问题都没有,直接写个二重循环搞定,会首先给个50分,如果能写点判断字符串是否为null的,60分。直
2021-07-21 10:59:03
136
原创 我以为面试官要问我八股文,可惜大意了没有闪之场景题
前言:送给面试的小伙伴,也送给我自己。很多小伙伴可能会被一次面试打击后,就有了害怕的想法,不敢去面试,馄饨也有这样的情况,这还是在今年春招的时候,虽然自己在学校做过几个项目,但是对于理论方面或者知识点,我基本上是空白,这就让我有了一种畏惧心理,我到底该不该面试,我面试的话什么都不知道啊,怀着这种心态去复习,我会发现,我虽然复习了,但是我并不知道自己在真正面试时会多少。在这里给小伙伴们两条建议:不要畏惧面试,要敢于面试并去总结经验不只是硬背,要加入自己的理解文章目录用mybatis动态建表怎.
2021-07-18 13:46:01
757
转载 【java】jstack工具
文章目录一、介绍线程状态Monitor调用修饰**locked****waiting to lock****waiting on**parking to wait for二、命令格式三、使用实例四、如何分析1、线程Dump的分析2、死锁分析一、介绍jstack是java虚拟机自带的一种堆栈跟踪工具。jstack用于打印出给定的java进程ID或core file或远程调试服务的Java堆栈信息,如果是在64位机器上,需要指定选项"-J-d64",Windows的jstack使用方式只支持以下的这种方式:
2021-07-15 09:17:17
1824
转载 【java】JPS使用
文章目录1.什么是JPS2.使用方法:3.常用参数:1.什么是JPSjps(Java Virtual Machine Process Status Tool)是java提供的一个显示当前所有java进程pid的命令,适合在linux/unix平台上简单察看当前java进程的一些简单情况。很多人都是用过unix系统里的ps命令,这个命令主要是用来显示当前系统的进程情况,有哪些进程以及进程id。jps 也是一样,它的作用是显示当前系统的java进程情况及进程id。我们可以通过它来查看我们到底启动了几
2021-07-15 08:29:04
277
转载 【mysql】sql时间查询
查询当天数据select * from tab where FROM_UNIXTIME(fabutime, ‘%Y%m%d’) = 20121217;mysql TO_DAYS(date) 函数TO_DAYS(date)给定一个日期date, 返回一个天数 (从年份0开始的天数 )。mysql> SELECT TO_DAYS(950501);-> 728779mysql查询今天、昨天、7天、近30天、本月、上一月 数据今天select * from 表名 where to_da
2021-07-03 21:46:58
460
原创 【力扣】69. x 的平方根
文章目录求开方69. x 的平方根Math工具类计算二分查找牛顿迭代法求开方69. x 的平方根题目描述:实现 int sqrt(int x) 函数。计算并返回 x 的平方根,其中 x 是非负整数。由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去。示例 1:输入: 4输出: 2示例 2:输入: 8输出: 2说明:8 的平方根是 2.82842…,由于返回类型是整数,小数部分将被舍去。Math工具类计算我们知道 java 的工具类中有计算平方根的方法,我们直
2021-06-20 16:13:46
340
原创 【git】解决git status 时中文乱码问题
最近复习时创建知识仓库后,查看状态 git status时可能会出现中文乱码问题,就比如下面这个。我查看跟新状态度,却是中文乱码,这使得我都不知道更新的文件是哪个。解决方法在git bash 下输入以下代码$ git config --global core.quotePath false成功解决。也欢迎大家访问我的仓库 https://gitee.com/mookjt/knowledge_warehouse...
2021-06-14 10:39:39
358
原创 【算法】双指针题解
双指针算法解释:(直接照搬齐姐的了)双指针主要用于遍历数组,两个指针指向不同的元素,从而协同完成任务。也可以延伸到多个数组的多个指针。若两个指针指向同一数组,遍历方向相同且不会相交,则也称为滑动窗口(两个指针包围的区域即为当前的窗口),经常用于区间搜索。若两个指针指向同一数组,但是遍历方向相反,则可以用来进行搜索,待搜索的数组往往是排好序的。对于 C++ 语言,指针还可以玩出很多新的花样。一些常见的关于指针的操作如下。指针与常量int x;int * p1 = &x; // 指
2021-06-07 11:48:16
266
1
原创 贪心算法题解
文章目录贪心算法分配问题力扣455 分发饼干1.暴力破解法求最值2.采用贪心策略,求最值(**齐姐思路**)力扣135 分发糖果贪心策略区间问题力扣435 无重叠区间贪心策略练习力扣 605 种花问题贪心算法分配问题力扣455 分发饼干题目描述:假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子 i,都有一个胃口值 g[i],这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j,都有一个尺寸 s[j] 。如果 s[j] >= g[i],我
2021-05-30 14:43:06
307
原创 【java】老大问我怎么停止一个线程,我上来就是一个stop,不为别的,就是玩
近期也是在复习,因为多线程这在项目中几乎没有考虑过,所以也是打算恶补一下。线程与进程首先,我们肯定得知道线程是干嘛的呗,这里就简单描述一下。在计算机中,我们把每个任务称为一个进程,就比如我现在打开了一个浏览器,那么这是不代表一个任务,我们又打开音乐播放器,这也算是一个任务。那么线程呢,比如我们在用word打字的时候,word可以让我们一边打字,一边进行拼写检查,同时在后台还可以进行打印,我们把这种称为线程。上边我们只是介绍了一下,下面我们进入正题。先说一下停止线程的几种方式:使用退出标志.
2021-05-21 17:13:36
211
原创 学习算法和刷题的思路指南
文章目录学习算法和刷题的思路指南**⼀、**数据结构的存储⽅式数组与链表的优缺点**⼆、**数据结构的基本操作总结学习算法和刷题的思路指南**⼀、**数据结构的存储⽅式数据结构的存储⽅式只有两种:数组(顺序存储)和链表(链式存储)。「队列」、「栈」这两种数据结构既可以使⽤链表也可以使⽤数组实现。⽤数组实现,就要处理扩容缩容的问题;⽤链表实现,没有这个问题, 但需要更多的内存空间存储节点指针。「图」的两种表⽰⽅法,邻接表就是链表,邻接矩阵就是⼆维数组。邻接矩 阵判断连通性迅速,并可以进⾏矩阵运算解
2021-05-12 15:16:27
314
2
原创 【力扣】1720.解码异或后的数组
文章目录题目题解代码实现题目未知 整数数组 arr 由 n 个非负整数组成。经编码后变为长度为 n - 1 的另一个整数数组 encoded ,其中 encoded[i] = arr[i] XOR arr[i + 1] 。例如,arr = [1,0,2,1] 经编码后得到 encoded = [1,2,3] 。给你编码后的数组 encoded 和原数组 arr 的第一个元素 first(arr[0])。请解码返回原数组 arr 。可以证明答案存在并且是唯一的。示例 1:输入:encoded =
2021-05-06 09:44:21
182
原创 【力扣】7.整数翻转
文章目录题目利用数组+String进行翻转【官方算法】利用数学方法进行翻转题目给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] ,就返回 0。假设环境不允许存储 64 位整数(有符号或无符号)。示例 1:输入:x = 123输出:321示例 2:输入:x = -123输出:-321示例 3:输入:x = 120输出:21示例 4:输入:x = 0输出:0提示:-23
2021-05-03 20:15:57
205
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人