自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(238)
  • 资源 (2)
  • 收藏
  • 关注

原创 IDEA 宝贝插件

Codota还包含一个网站:https://www.codota.com/code。

2024-04-02 15:05:40 1428

转载 CompletableFuture实现异步编排全面分析和总结

异步回调方法可以选择是否传递线程池参数Executor,这里为了实现线程池隔离,当不传递线程池时,默认会使用ForkJoinPool中的公共线程池CommonPool,这个线程池默认创建的线程数是CPU的核数,如果所有的异步回调共享一个线程池,核心与非核心业务都竞争同一个池中的线程,那么一旦有任务执行一些很慢的I/O 操作,就会导致线程池中所有线程都阻塞在I/O操作上,很容易成为系统瓶颈,影响整个系统的性能。因此, 建议强制传线程池,且根据实际情况做线程池隔离,减少不同业务之间的相互干扰。

2024-03-22 17:31:57 116

原创 Spring线程池ThreadPoolTaskExecutor的使用

降低系统资源消耗,通过重用已存在的线程,降低线程创建和销毁造成的消耗;提高系统响应速度,当有任务到达时,通过复用已存在的线程,无需等待新线程的创建便能立即执行;方便线程并发数的管控,因为线程若是无限制的创建,可能会导致内存占用过多而产生OOM,并且会造成cpu过度切换(cpu切换线程是有时间成本的(需要保持当前执行线程的现场,并恢复要执行线程的现场)提供更强大的功能,延时定时线程池。

2024-03-21 18:02:58 185

原创 结果集进行二次分页处理

适用场景:需要对查询的结果集进行分页处理,且需要动态嵌入其他的数据;可以用于union无法实现的场景。

2023-11-16 13:51:05 163

转载 mysql数据库多字段in写法

经常在写sql语句的时候会用到in的用法,以下内容讲解多个字段如何同时使用in,以下内容基于mysql 8.0进行讲解。

2023-09-15 17:48:02 1104

原创 win11开启护眼模式设置

1.点击左下角菜单,点击开始键打开"运行",或者点击"WIN+R"也能打开”运行“框,打开后,在框内输入regedit,并按下回车,转到注册编辑表;7.打开左下角菜单栏,点击重启电脑,重启完成后便可。4.进入文件夹页面后,再点击左侧的Control Panel里面的color;5.进入Colors 界面后,找到下面的windows,并点击它;2.选择左侧"HKEY_CURRENT_USER:,再点击进入;3.进入界面后,再次点击"Control Panel"进入;,填写完后,选择确定即可;

2023-09-14 10:01:47 4318

原创 mysql数据库列操作

【代码】mysql数据库列操作。

2023-09-12 11:15:49 118

转载 VMware克隆Linux主机后网络问题

将网卡配置中和网卡缓存配置中的网卡名和mac地址都修改为与ifconfig中的一致,然后使用命令。,此文件名在不同的CentOS系统中数字可能不一致,比如可能为。目录下的网卡配置文件名为ifcfg-eno16777984,且ifcfg-eno16777984中的网卡名。为00:50:56:AC:C5:11。ifconfig命令显示网卡名为。

2023-08-16 18:01:59 91

转载 java Queue中 remove/poll/take, add/offer/put, element/peek区别

不阻塞阻塞不阻塞阻塞不阻塞。

2023-07-14 15:37:44 545

转载 java8中函数式接口特性

返回一个组合函数, 首先执行before function的apply方法, 将它的返回作为输入参数再应用当前的function。结果:先执行value -> value * 2 >>5*2=10,再执行value -> value - 1, 10-1=9。先执行value -> value - 1 >>5-1=4,在执行value -> value * 2 结果是8。1.Function 有参有返回型函数、Function 函数的表现形式为接收一个参数,并返回一个值。* @return 函数的结果。

2023-07-14 15:09:07 205

原创 Feign 400 – Bad Request

4. 修改源代码,让请求参数一致。有问题,还是要先从源代码查起。今天收到同事反馈的问题。

2023-07-03 17:25:29 2393

原创 nginx: client intended to send too large body

最近上传大于1M文件的时候,报错nginx。经过排查修改nginx配置这是最简单的一个做法,着报错原因是nginx不允许上传配置过大的文件,那么件把nginx的上传大小配置调高就好。2、 把nginx.conf 加上超时时间 (在http{}里配置即可)

2023-06-21 16:21:40 2569

原创 Java找不到符号解决

然后重新打开进行maven clean package即可。在项目文件夹下删除以下文件。重新编译打包再运行。

2023-06-09 17:38:08 6841

原创 split失效分析

在这里插入图片描述](https://img-blog.csdnimg.cn/d4604edd6c0140cfbaa3cd575c3189bd.png)第2个例子中结果并不是 {“1223”, “234”, “”}, 而是 {“1223”, “234”}结尾空字符串被丢弃的问题。避免结尾空字符串丢弃。

2023-06-05 09:56:15 637

原创 Spring Boot 启动:No active profile set, falling back to default profiles: default

方法一:pom.xml加上下面两个依赖。方法二:添加启动参数。

2023-05-18 16:26:42 434

转载 Maven打包插件详解

是maven中针对打包任务而提供的标准插件,可以实现自定义打包。提供一个把工程依赖元素、模块、网站文档等其他文件存放到单个归档文件里打包成指定格式分发包,支持各种主流的格式如ziptar.gzjar和war等,具体打包哪些文件是高度可控的能够自定义包含/排除指定的目录或文件是提供的maven打包插件。可打直接可运行的jar包或war包。如果使用版本,则需要maven版本在2.0及以上,JDK在1.8及以上。

2023-05-06 10:31:22 2151 1

原创 maven 打包错误:jar运行报错no main manifest attribute

1.配置好pom.xml文件。

2023-05-06 10:22:41 720

转载 企业级的OSS对象存储

ConditionalOnMissingBean:修饰bean的一个注解,当你的bean被注册之后,注册相同类型的bean,就不会成功,它会保证你的bean只有一个,即你的实例只有一个。OssTemplate:oss模板接口,此接口主要是对oss操作的方法的一个接口,定义为接口主要是满足可扩展原则,就是其他人使用了我们的jar包,实现此接口可以自定义相关操作。看下图,有很多的配置,有的指定了默认值有的没有,可以到AmazonS3的官方文档熟悉相关配置,配置你所需要指定的配置信息等。

2023-05-04 10:49:37 400

转载 dependencyManagement和dependencies的区别

模型本身的版本很少改变,虽然如此,但它仍然是必不可少的,这是为了当Maven引入了新的特性或者其他模型变更的时候,确保稳定性。如果项目中不写依赖项,则会从父项目。2)dependencyManagement里只是声明依赖,并不实现引入,因此子项目需要显示的声明需要的依赖。是不会从父项目中继承的;只有在子项目中写了该依赖项,并且没有指定具体版本,才会从父项目中继承该项,并且version和scope都读取。modules:一个项目有多个平级模块,也叫做多重模块,或者合成项目,modules实现平级模块管理。

2023-04-26 14:30:45 174

转载 IDEA 用上这款免费 GPT4 插件,生产力爆表了

前两天,一兄台分享给我一款 IDE 插件:Bito-ChatGPT ,安装就能直接在IDE中使用 GPT,就算是不会魔法,同样也能使用;可自定义性强:插件对话框并不仅仅限于聊天机器人,也可以自定义对话框,让开发者根据自己的需求进行自由定制,可定制的选项包括头像、名称、背景等。总之,Bito-ChatGPT 插件是一款非常实用的智能化聊天机器人插件,可以为开发人员提供更快更准确的交互编程环境,有效提升开发效率。测试了一下,2021以上的 IDE 版本是能正常搜索到的,2020 版本的IDE搜不到插件。

2023-04-23 00:45:31 4270 1

转载 记一次FEIGN传递头带来的影响

这里我们直接看response里面的内容,这个时候已经远程调用远成了,看我们的请求头是有带有Accept-Encoding这个头的。Accept-Encoding: gzip, deflate ,表示这个请求的内容希望被压缩,压缩的目的是为了减少网络流量,Accept-Encoding表示Http响应是否进行压缩,一般的浏览器在访问网页时,是默认在请求头中加入。但是这个只是协议,只能是要求而不是强制的,如果服务器不支持压缩或者没有开启压缩,则不能起到作用,看一下这个两个头的作用,

2023-04-12 19:19:35 208

原创 ES-Spring Data Elasticsearch

Spring Data Elasticsearch是Spring Data的一个子项目,该项目旨在为新数据存储提供熟悉且一致的基于 Spring 的编程模型,同时保留特定于存储的功能和功能。Spring Data Elasticsearch是一个以 POJO 为中心的模型,用于与 Elastichsearch 文档交互并轻松编写 Repository 风格的数据访问层。Spring Data 的目的是用统一的接口,适配所有不同的存储类型。

2023-03-22 14:17:58 416

原创 ES-客户端

ES 5.0.0只是发布第一个Java Low-level REST client时的ES版本(2016年),不代表其向前只兼容到5.0,Java Low-level REST client基于Apache HTTP 客户端,它允许使用 HTTP 与任何版本的 Elasticsearch 集群进行通信。Java API使用的客户端名称叫TransportClient,从7.0.0开始,官方已经不建议使用TransportClient作为ES的Java客户端了,并且从8.0会被彻底删除。

2023-03-22 14:11:02 529

原创 ES-数据建模

数据模型是描述现实世界某种现象或者状态的物理抽象,比如我们之前用FSA来描述周老师的一天这种现象,就是把现实世界抽象成某种模型。现实世界有很多重要的关联关系:博客帖子有一些评论,银行账户有多次交易记录,客户有多个银行账户,订单有多个订单明细,文件目录有多个文件和子目录。每个实体(或 行 ,在关系世界中)可以被主键唯一标识。实体规范化(范式)。唯一实体的数据只存储一次,而相关实体只存储它的主键。只能在一个具体位置修改这个实体的数据。实体可以进行关联查询,可以跨实体搜索。

2023-03-20 18:06:31 357

原创 ES-nested和join查询

Elasticsearch没有内部对象的概念,因此,ES在存储复杂类型的时候会把对象的复杂层次结果扁平化为一个键值对列表。在索引父子级关系数据的时候必须传入routing参数,即指定把数据存入哪个分片,因为父文档和子文档必须在同一个分片上,因此,在获取、删除或更新子文档时需要提供相同的路由值。join唯一合适应用场景是:当索引数据包含一对多的关系,并且其中一个实体的数量远远超过另一个的时候。max:使用所有匹配的子对象中的最高相关性得分。min:使用所有匹配的子对象中最低的相关性得分。

2023-03-20 18:05:31 786

原创 ES-搜索推荐

搜索一般都会要求具有“搜索推荐”或者叫“搜索补全”的功能,即在用户输入搜索的过程中,进行自动补全或者纠错。以此来提高搜索文档的匹配精准度,进而提升用户的搜索体验,这就是Suggest。##四种Suggester。

2023-03-20 17:14:18 585

原创 ES-模糊查询

概念:以xx开头的搜索,不计算相关度评分。

2023-03-20 16:47:10 5712

原创 ES-索引的批量操作

create:如果在PUT数据的时候当前数据已经存在,则数据会被覆盖,如果在PUT的时候加上操作类型create,此时如果数据已存在则会返回失败,因为已经强制指定了操作类型为create,ES就不会再去执行update操作。比如:PUT /pruduct/_create/1/ ( 老版本的语法为 PUT /pruduct/doc/1/create )指的就是在索引product中强制创建id为1的数据,如果id为1的数据已存在,则返回失败。delete:删除文档,ES对文档的删除是懒删除机制,即标记删除。

2023-03-20 16:09:15 875

转载 MySQL索引失效跑的8个场景

索引的底层是一颗B+树,那么联合索引的底层也就是一颗B+树,只不过联合索引的B+树节点中存储的是键值。在 WHERE 子句中,如果在 OR 前的条件列是索引列,而在 OR 后的条件列不是索引列,那么索引会失效 举个例子,比如下面的查询语句,b 是主键,e 是普通列,从执行计划的结果看,是走了全表扫描。因为索引保存的是索引字段的原始值,而不是 b - 1 表达式计算后的值,所以无法走索引,只能通过把索引字段的取值都取出来,然后依次进行表达式的计算来进行条件判断,因此采用的就是全表扫描的方式。

2023-03-20 14:41:31 74

原创 ES-脚本查询

首先,使用doc关键字,将导致该字段的条件被加载到内存(缓存),这将导致更快的执行,但更多的内存消耗。(2)painless:JavaEE使用java语言开发,.Net使用C#/F#语言开发,Flutter使用Dart语言开发,同样,ES 5.0+版本后的Scripting使用的语言默认就是painless,painless是一种专门用于Elasticsearch的简单,用于内联和存储脚本,是ES 5.0+的默认脚本语言,类似于Java,也有注释、关键字、类型、变量、函数等,是一种安全的脚本语言。

2023-03-17 15:45:44 1348

原创 mysql数据库查看数据库大小和表大小

【代码】mysql数据库查看数据库大小和表大小。

2023-03-17 11:30:00 191

原创 ES-聚合查询

size=0 { “aggs”: { “”: { “histogram”: { “field”: “price”, #字段名称 “interval”: 1000, #区间间隔 “keyed”: true, #返回数据的结构化类型 “min_doc_count”: , #返回桶的最小文档数阈值,即文档数小于num的桶不会被输出 “missing”: 1999 #空值的替换值,即如果文档对应字段的值为空,则默认输出1999(参数值) } } } }

2023-03-16 18:45:51 7375

原创 ES-分词器

ikmaxword会将文本做最细粒度的拆分,比如会将“中华人民共和国国歌”拆分为“中华人民共和国,中华人民,中华,华人,人民共和国,人民,人,民,共和国,共和,和,国国,国歌”,会穷尽各种可能的组合,适合 Term Query;ik下载地址:https://github.com/medcl/elasticsearch-analysis-ik。Github加速器:https://github.com/fhefh2015/Fast-GitHub。quantifier.dic:特殊词库:计量单位等。

2023-03-16 17:06:00 657

原创 ES-搜索和查询

​ 使用query关键字进行检索,倾向于相关度搜索,故需要计算评分。搜索是Elasticsearch最关键和重要的部分。​ 概念:相关度评分用于对搜索结果排序,评分越高则认为其结果和搜索的预期值相关度越高,即越符合搜索预期值。在7.x之前相关度评分默认使用TF/IDF算法计算而来,7.x之后默认为BM25。​ 排序:相关度评分为搜索结果的排序依据,默认情况下评分越高,则结果越靠前。

2023-03-16 16:01:51 1863

原创 ES-映射

​ 1) Frozen indices(冻结索引):有些索引使用率很高,会被保存在内存中,有些使用率特别低,宁愿在使用的时候重新创建,在使用完毕后丢弃数据, Frozen indices的数据命中频率小,不适用于高搜索负载,数据不会被保存在内存中,堆空间占用比普通索引少得多,Frozen indices是只读的,请求可能 是秒级或者分钟级。​ ⑨ enable:是否创建倒排索引,可以对字段操作,也可以对索引操作,如果不创建索引,让然可以检索并在_source元数据中展示,谨慎使用,该状态无法 修改。

2023-03-16 13:53:30 630

原创 ES-索引的CRUD

(6)删除数据 DELETE /index/type/id。(3)删除索引:DELETE /index?(2)查询索引:GET _cat/indices?(1)创建索引:PUT /index?基于REST风格的API。

2023-03-16 13:36:21 78

转载 Java属性命名为什么不建议使用is开头

因而当我在用postman调接口时,boolean类型的isSuccess参数返回时,响应结果中的参数是success。柚子前两天在调api接口时,发现了一个问题,接收对象使用了和被请求方相同类型相同名字的boolean参数,但是却接收不到参数值,于是记录总结一下这个问题。java中,对于非boolean类型的参数,getter和setter方法命名的规范是以get和set开头;而对于boolean类型的参数,setter方法是以set开头,但是getter方法命名的规范是以is开头。改为传"T"和"F"

2023-03-15 14:43:27 1152

原创 ES-核心概念

Lucene的作者Doug Cutting是资深的的全文检索专家,Lucene最开始发布在他本人的主页上,2001年10月贡献给Apache,成为Apache基金会的一个子项目。全文检索:索引系统通过扫描文章中的每一个词,对其创建索引,指明在文章中出现的次数和位置,当用户查询时,索引系统就会根据事先建立的索引进行查找,并将查找的结果反馈给用户的检索方式。Lucene是一个成熟的全文检索库,由Java语言编写,具有高性能、可伸缩的特点,并且开源、免费。各大电商网站、OA、站内搜索、视频网站等。

2023-03-10 18:29:07 89

原创 ES-环境安装

自身兼容性:https://www.elastic.co/cn/support/matrix#matrix_compatibility。下载地址:https://www.elastic.co/cn/downloads/elasticsearch。操作系统兼容性:https://www.elastic.co/cn/support/matrix。下载地址:https://www.elastic.co/cn/downloads/kibana。(5) 验证:http://localhost:9100/ 安装成功。

2023-03-10 18:00:05 145

原创 ES-简介

由于Elasticsearch的功能强大和使用简单,维基百科、卫报、Stack Overflow、GitHub等都纷纷采用它来做搜索。可以在笔记本电脑上运行,也可以在承载了PB级数据的上千台服务器的集群上运行。能胜任上百个服务节点的扩展,并支持 PB 级别的结构化或者非结构化数据。一个分布式的实时文档存储,每个字段可以被索引与搜索;垂直领域:各大电商平台、OA系统、站内搜索。使用门槛低,易扩展,对于小微企业友好。搜索引擎:如百度、搜狗、谷歌、必应等。PB级数据,近实时搜索,秒级!开源免费,上手简单。

2023-03-10 17:47:56 301

JByteMod-1.8.0.jar

java字节码修改工具,可以对jar包进行定制修改,仅供学习使用。

2021-07-20

asm-7.1.jar

动态代理需要使用的asm文件

2021-05-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除