自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

CharlesYooSky的博客

夫君子之行,静以修身,俭以养德。非淡泊无以明志,非宁静无以致远。夫学须静也,才须学也。非学无以广才,非志无以成学。淫慢则不能励精,险躁则不能冶性。

  • 博客(234)
  • 资源 (1)
  • 收藏
  • 关注

原创 SpringBoot集成Elasticsearch 进阶,实现中文、拼音分词

查了很多关于es 拼音分词器的文章,有价值的的不是很多,还是自己写一篇吧1、定义分词分为读时分词和写时分词。读时分词发生在用户查询时,ES 会即时地对用户输入的关键词进行分词,分词结果只存在内存中,当查询结束时,分词结果也会随即消失。而写时分词发生在文档写入时,ES 会对文档进行分词后,将结果存入倒排索引,该部分最终会以文件的形式存储于磁盘上,不会因查询结束或者 ES 重启而丢失。写时...

2019-06-24 14:10:05 2885 1

原创 Java使用XStream将压缩成gz格式xml文件转换成List详解及问题

这次说是写文章,感觉更是像填坑,几年前我就写过vo对象list转换成xml并压缩的相关文章Java将数据生成XML文件并进行压缩成GZ格式那会都没发现没有怎么解压缩,一个工具类整整写了一天,遇到了很多问题,因为写了一篇文章记录一下,也帮助兄弟们排雷,少造轮子少走弯路,那咱们废话不多说,上干活!

2024-04-17 09:09:56 518

原创 Comparison method violates its general contract两种解决办法

Comparison method violates its general contract两种解决办法

2024-02-29 10:09:07 700

原创 MySQL史上最全锁分类-持续更新中

MYSQL锁分类

2024-01-18 14:44:50 442

原创 一篇能让你彻底搞明白前复权、后复权、不复权的好文

当一家上市公司出现盈利,有的公司会对股东进行分红或送股,就是经常看到上市公司公告里的每10股送5股、每10股送10股等等,那么公司股票数量就会增加,为了保持公司总市值不变,所以就必须下调股价,这个下调股价的操作就叫作除权(XR),股票被除权后就会看到在原有股票走势图上也就是不复权股票走势图上就会有一个大大的跳空缺口,很多人可能会认为怎么跌那么多,其实不是股票下跌,而是为了保持股票总市值不变,主动下调的股价。由于下调除权前的股价,对于上市很久的公司,股价会出现负数,影响增长率的计算,这就需要后复权作为补充。

2023-12-13 11:03:49 393

原创 Mysql七种高阶用法,让你少走弯路

Mysql七种高阶用法,让你少走弯路

2023-11-29 15:13:24 130

原创 Centos安装RabbitMQ

1、administrator 可以登录控制台、查看所有信息、可以对rabbitmq进行管理。由于需要使用 yum 安装一个 socat 组件,所以需要保证虚拟机可以联网。1、将官网下载好的rpm包在一个目录,需要安装erlang环境。3、policymaker 策略制定者 登录控制台,指定策略。注意:需要开启15672端口访问 默认账号密码 guest。2、monitoring 监控者 登录控制台,查看所有信息。4、managment 普通管理员 登录控制台。添加开机启动 RabbitMQ 服务。

2023-09-18 10:32:39 302

原创 Java8异步类CompletableFuture详解

JDK8引入了一个新的类CompletableFuture

2023-09-01 15:19:42 886

原创 解决SpringBoot服务返回数据存在$ref $.data等相关问题

解决SpringBoot服务返回数据存在$ref $.data等相关问题

2023-08-08 09:10:21 1328

原创 SpringBoot使用注解 拦截器 redis实现接口防刷

接口防刷记录

2023-04-18 14:45:53 235 1

原创 解决MySQL使用group_concat函数拼接数据丢失问题

解决MySQL使用group_concat函数拼接数据丢失问题

2023-03-26 23:01:13 1441

原创 Java设计模式-适配器模式

Java设计模式-适配器模式

2023-03-08 14:53:31 171

原创 Java设计模式-单例模式

Java设计模式-单例模式

2023-02-23 20:00:49 339

原创 Java设计模式-原型模式

原型模式

2023-02-22 19:51:12 502

原创 Java 中 引用拷贝、浅拷贝、深拷贝

Java 中 引用拷贝、浅拷贝、深拷贝

2023-02-13 16:14:05 1363

原创 Java设计模式-生成器模式(建造模式)

Java设计模式-生成器模式(建造模式)

2023-02-10 17:15:30 1120

原创 解决Mac 安装应用提示:xx已损坏,无法打开。 您应该将它移到废纸篓问题

mac 已损坏,无法打开。 您应该将它移到废纸篓。

2023-02-09 15:38:54 5042 2

原创 Java设计模式-工厂模式

**工厂模式**是一种创建型设计模式, 是用工厂方法代替new操作的一种模式。工厂模式能大量减少if-else,减少大量冗余代码,也能够更好的提高代码复用性 ,减少耦合,也就是我们常说的[高内聚低耦合](https://so.csdn.net/so/search?q=高内聚低耦合&spm=1001.2101.3001.7020)。

2023-02-07 16:55:53 237

原创 Java 设计模式-责任链模式

基于SpringBoot的Java 设计模式-责任链模式

2023-01-28 16:28:46 3947 2

原创 Java获取实体类的属性名和属性值

Java获取实体类的属性名和属性值 反射

2023-01-28 10:35:31 6692

原创 Java 设计模式-目的和设计原则

基于SpringBoot的Java 设计模式-目的和设计原则

2023-01-16 14:27:04 664

原创 解决Mac 安装应用提示:xx已损坏,无法打开。 您应该将它移到废纸篓问题

es 更新索引

2023-01-11 15:50:53 3327

原创 Java对List对象不同字段进行排序工具类

Java对List对象不同字段进行排序工具类

2023-01-11 15:24:37 408 2

原创 浅谈Spring中JDK动态代理和CGLIB动态代理

浅谈Spring中JDK动态代理和CGLIB动态代理

2022-10-21 16:43:25 1582

原创 SpringBoot 使用@EventListener注解

SpringBoot 使用@EventListener注解

2022-10-20 18:48:18 2043

原创 Mac 环境安装gradle

mac 安装gradle 基础教程

2022-10-09 13:17:09 1749

原创 Mac 安装、卸载指定版本Node ,指定node镜像

Homebrew是一款Mac OS平台下的软件包管理工具,拥有安装、卸载、更新、查看、搜索等很多实用的功能。简单的一条指令,就可以实现包管理,而不用你关心各种依赖和文件路径的情况,十分方便快捷。nvm是node版本管理工具,为了解决node各种版本存在不兼容现象,nvm是让你在同一台机器上安装和切换不同版本的node的工具。当你查询或者安装时候,会发现非常慢,那么我们把镜像切换到淘宝镜像。安装完成后,修改环境变量 ,进入当前用户的Home目录。然后按 esc 退出编辑模式。按 i 进入编辑模式。

2022-09-06 11:24:57 1317

原创 MybatisPlus 中MySQL排序失效问题的解决

作为一个CRUD 工程师,今天在写sql得时候,出现一个问题,按照一个decimal字段排序的时候,并没有按照要求进行排序,开始误认为是mysql问题,以为没有按照浮点类型进行排序,我就一顿操作猛如虎,......

2022-08-03 13:34:54 1619

原创 高性能实体类转换工具MapStruct 使用教程

高性能实体类转换工具MapStruct 使用教程

2022-07-26 22:22:41 1448

原创 MySql查询某个时间段内的数据

mysql基础

2022-07-13 14:36:25 5730

原创 Java实现发送邮件功能

java 实现发送邮件功能

2022-06-13 10:03:09 208

原创 Non-terminating decimal expansion; no exact representable decimal result

公司项目数据须要处理精度比较高的浮点数,因此弃用double类型,改用BigDecimal类来进行数值处理。但在除法运算得时候发生异常,如下:# Non-terminating decimal expansion; no exact representable decimal result大概的意思是“没法结束的除法表达式;没有精确的除结果”。我当时输入的10/3,结果应该是3.3333…333解决方案:通过BigDecimal做除法运算时,在不整除出现无限循环小数时,就会报异常,解决办法就是di

2022-05-24 13:28:47 387

原创 Java线城池详解

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

2022-04-13 22:50:42 615 1

原创 Docker安装Redis教程

趁今天有空,准备把redis服务也迁移到docker容器中来,那么在docker安装redis之前,我要先把本机安装的redis服务干掉(我的之前里面就没有啥数据,所以直接干掉,你们有数据的需要做数据迁移,别傻乎乎的跟我一样直接干掉),好,那我们先来看怎样把mac中安装的redis服务卸载干净:停止redis服务:redis-cli shutdown查看redis进程:ps -ef|grep redis干掉redis进程:kill -9 pid干掉install时产生的几个redis文件:r

2022-04-12 22:36:47 396

原创 docker 安装 rabbtiMQ

搜索rabbitmqdocker search rabbitmq:management下载拉取rabbitmqdocker pull rabbitmq:management运行镜像docker run -d --name rabbitmq -p 5672:5672 -p 15672:15672 docker.io/rabbitmq:management 命令说明:-d:以后台的方式运行–name rabbitmq :指定容器的名称为rabbitmq-p 5672:5672 -p 1

2022-04-12 22:35:07 2759

原创 Radission实现分布式锁以及原理

在多机部署环境中,不同机器不同进程中,多个进程必须以互斥的方式独占共享资源,这时用分布式锁是最直接有效的。以往的工作中看到或用到几种实现方案,有基于zk的,也有基于redis的。那么,究竟什么样的分布式锁实现,才算是比较好的方案?常见分布式锁方案对比表格中对比了几种常见的方案,redis+lua基本可应付工作中分布式锁的需求。然而,当偶然看到redisson分布式锁实现方案(传送门),相比以上方案,redisson保持了简单易用、支持锁重入、支持阻塞等待、Lua脚本原子操作。分布式锁需满足四个条件

2022-03-27 08:16:30 811

原创 Mac 安装Go环境配置

1、前言go语言(或 Golang)是Google开发的开源编程语言,诞生于2006年1月2日下午15点4分5秒,于2009年11月开源,2012年发布go稳定版。Go语言在多核并发上拥有原生的设计优势,Go语言从底层原生支持并发,无须第三方库、开发者的编程技巧和开发经验。go是非常年轻的一门语言,它的主要目标是“兼具Python 等动态语言的开发速度和C/C++等编译型语言的性能与安全性”很多公司,特别是中国的互联网公司,即将或者已经完成了使用 Go 语言改造旧系统的过程。经过 Go 语言重构的系统

2022-03-09 16:27:28 1338

原创 Java内存模型中happen-before原则

前言熟悉 Java 并发编程的都知道,JMM(Java 内存模型) 中的 happen-before(简称 hb)规则,该规则定义了 Java 多线程操作的有序性和可见性,防止了编译器重排序对程序结果的影响。按照官方的说法:当一个变量被多个线程读取并且至少被一个线程写入时,如果读操作和写操作没有 HB 关系,则会产生数据竞争问题。 要想保证操作 B 的线程看到操作 A 的结果(无论 A 和 B 是否在一个线程),那么在 A 和 B 之间必须满足 HB 原则,如果没有,将有可能导致重排序。 当缺少 HB

2022-03-07 16:11:58 581

原创 Mac Idea合并分支有.DS_Store 导致合并失败

在Mac os中是存在.DS_Store文件的,在使用git对项目进行版本控制时,该文件如果不加入.gitignore中,每次修改文件提交时,该文件都会在提交列表中。明明没动它,每次修改却还是要提交它,这非常让人懊恼。然后删除项目中所有的.DS_Store,在项目目录下执行如下命令:find . -name .DS_Store -print0 | xargs -0 git rm -f --ignore-unmatch删除之后就可以合并分支喽...

2022-03-04 16:02:51 1224

原创 Elasticsearch中FORBIDDEN/12/index read-only / allow delete (api)解决方案

报错起因:同步数据到es中发生异常,日志报错写入索引异常,报错情况如下org.elasticsearch.cluster.block.ClusterBlockException: blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];ElasticSearch进入“只读”模式,只允许删除,ES说明文档中有写明,当ES数据所在目录磁盘空间使用率超过90%后,ES将修改为只读状态,所以初步判断是磁盘空间不足导致es自动关闭了索引的

2022-01-13 15:00:54 2389

2024年Java最全面试八股文合集

2024年Java最全面试八股文合集,金三银四马上到了,要想升职加薪的兄弟们还不快赶紧卷起来!!

2024-02-29

2024年前端VUE必看面试题

2024年前端VUE必看面试题

2024-01-24

MySQL性能优化神器, Explain总结使用最详细教程

MySQL性能优化神器, Explain总结使用最详细教程

2024-01-16

采用Memcached实现分布式Session所需的jar包

采用Memcached实现分布式Session所需的jar包 史上最全的

2018-03-19

空空如也

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

TA关注的人

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