自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(45)
  • 收藏
  • 关注

原创 gradle安装及配置

IDEA -> File -> New Projects Setup -> Setting For New Projects,配置Gradle 仓库。,即自己的安装目录。然后在path中添加**%GRADLE_HOME%\bin**;如果系统变量无法添加可以在用户变量中修改。打开 安装目录\init.d\ 下的 init.gradle(没有就新建一个文件)。地址为:https://gradle.org/releases/验证安装是否成功,如果看到下图样式则说明安装配置成功。,点击进行环境变量配置。

2024-08-06 20:31:14 277

原创 图片转PDF工具

【代码】图片转PDF工具。

2024-08-01 11:30:36 340

原创 PDF转图片工具

【代码】PDF转图片工具。

2024-08-01 11:16:39 325

原创 maven项目依赖本地jar包

maven项目依赖本地jar包。

2024-07-30 16:38:50 452

原创 guava-retrying使用

【代码】guava-retrying使用。

2024-07-12 14:39:21 160

原创 Java程序打印日志

在resources目录下新建log4j.properties配置文件,配置内容如下。POM文件中添加以下依赖。

2024-07-11 14:10:38 773

原创 压缩解压文件工具

zip4j压缩解压文件

2024-07-05 14:40:29 197

原创 Pipeline流水线组件

*** 处理器处理方法* @param handlerContext 上下文* @param t 要处理的数据*/@Data/*** 执行器名称 *//*** 执行器 *//*** 链表的下一个节点,用来保存下一个执行器 *//*** 调用该方法即调用上下文中处理器的执行方法* @param t 需要处理的数据*//*** 执行下一个节点的处理器* @param t 待执行的数据*/= null) {

2024-06-13 18:44:15 352

原创 文件已经删除但磁盘空间未释放

排查系统日志查看是否有大文件,将系统日志清理后,发现磁盘使用率恢复到了80%以下,但是磁盘使用率相较其他服务器依然很高,随着日志文件的写入,磁盘空间使用率不断上涨,用不了多久很快就会又达到告警阈值。磁盘使用率依然这么高肯定服务器有异常情况,最终发现是日志文件已经删除,但实际进程还在占用文件句柄,文件还是打开的空间没有释放。但是此方式只是清空了文件内容,如果有新的删除操作,会产生新的文件继续占用磁盘空间。通过fd清空文件,此处的228是进程ID。首先查询哪些文件已删除但是空间没有释放。

2024-06-13 16:49:13 204

原创 mvn命令安装jar包到本地maven仓库

mvn命令安装jar包到本地maven仓库,新建一个installJar.cmd文件,复制以下命令到文件中,并修改对应的内容,保存后双击执行命令文件即可。^ 可以用作同一行命令的换行符。

2024-05-29 15:36:46 255

原创 比较两个JSON之间的差异

网上找到的比较JSON工具类,比较两个JSON对象之间的差异,并将差异字段按照原JSON对象的树状结构展现出来,方便对数据进行对比。对原有方法进行了部分优化。

2024-05-15 10:05:36 2336

原创 IDEA设置全局配置

在IDEA中,选择 File -> Close Project 关闭项目。然后选择Customize -> All settings 进行全局配置,即所有项目公共的配置。

2024-03-20 15:00:34 1358

原创 @Mock @Spy @InjectMocks @Captor 注解

当我们需要对UserServiceImpl 进行单元测试时,就需要通过@InjectMocks 生成我们的被测试类UserServiceImpl ,用@Mock 来生成我们的模拟依赖对象UserManagerImpl,此时Mockito会将UserManagerImpl自动注入到UserServiceImpl 中,我们在调用userService.createUser()方法时就不会报空指针异常了。@InjectMocks注解用来创建被测试的类对象,他的依赖对项由@Mock来创建;

2024-03-18 17:34:04 1468

原创 JUNIT5+Mockito单元测试

之前写过一篇使用,使用的是junit4来编写的单元测试用例,目前很多新项目都已经使用JDK11+以及SpringBoot3+。本次基于junit5+Mockito来编写单元测试。

2024-03-13 17:10:08 945 1

原创 使用testMe自动生成单元测试用例

对于之前的老项目或者是前期赶进度未添加单元测试用例的项目来说,手动添加单元测试耗时又费力,这时候我们就需要一款能够提高效率的一款插件来帮助我们提高单元测试覆盖率。

2023-10-10 16:47:12 7808 3

原创 MyBatis批量更新等SQL

当我们需要对MySQL数据库中的数据进行批量更新时,可以采用以下方式进行更新,以下为mybatis配置的SQL语句。

2023-09-28 13:58:59 1274

原创 mybatis-generator自动生成代码

mybatis-generator自动生成代码

2023-06-16 20:19:21 475

原创 Springboot自定义注解打印方法入参

依赖配置好后,需要我们自定义一个注解。/*** 方法英文名称,格式为:类名.方法名/*** 方法中文名称,必填/*** 描述信息,非必填@Documented 将该自定义注解添加到 javadoc 文档中@Target({ElementType.METHOD}) 该注解是作用在方法上的@Retention(RetentionPolicy.RUNTIME) 作用时机为运行时自定义注解定义完成,可以在我们的方法上面来使用这个注解了,使用如下图。

2023-04-08 15:29:55 575

原创 LUA脚本使用

通过分析以上lua脚本,可以看出脚本的执行流程。第一步:判断了一下KEYS[1]是否存在,不存在则返回-3,-3标识库存未初始化;第二步:KEYS[1]值存在,则获取到KEYS[1]的值stock,即库存数量,在获取到ARGV[1],将其转化为数字;第三步:判断一下stock库存数量是否是-1,-1表示不限制库存数量;第四步:如果库存数量不为-1,那么就判断下stock库存数量是否是大于等于要扣减的库存数,如果大于等于,表示库存是充足的可以进行扣减操作,然后返回扣减后当前库存数量;

2023-04-08 14:14:57 107

原创 并发编程之ThreadPoolTaskExecutor与ThreadPoolExecutor的区别

因此Spring的线程池在初始化对象时,也便初始化了JDK的线程池并赋值,从而操作Spring线程池处理多线程任务时,其实本质上还是JDK的线程池在执行。3、如果任务可以成功加入队列,那么我们仍然需要再次检查是否应该添加线程(因为自上次检查以来,已有的线程已死亡)或自进入此方法后线程池已关闭。2、获取线程池中的线程数,如果运行的线程少于corePoolSize数量,会尝试以给定命令作为第一个线程启动新线程(核心线程)的任务。3、判断如果JDK线程池对象不为空,则给线程池赋值核心线程数。

2023-04-08 13:57:55 840

原创 Springboot自定义配置类

Springboot自定义配置类

2023-04-08 13:55:47 1218

原创 并发编程之Future原理解析

以上就是对于FutureTask的分析,我们可以了解FutureTask任务执行的方式以及Future.get已阻塞的方式获取线程执行的结果原理,并且从代码中可以了解FutureTask的任务执行状态以及状态的变化过程。

2023-04-08 13:48:41 238

原创 CompletableFuture解析

CompletableFuture解析

2023-04-08 13:35:40 527

原创 POI创建联动下拉框的Excel

我们有时候需要在Excel中加入级联下拉框,POI功能很强大,可以实现这样的功能,这里我们使用POI实现一个省市县三级地址的级联下拉框。

2022-08-17 18:34:55 1900

原创 常用正则表达式

常用正则表达式

2022-06-15 18:45:14 132

原创 EasyExcel读写文件

EasyExcel读写文件文章目录EasyExcel读写文件1、写文件1.1 定义实体类1.2 获取表头样式1.3 获取内容样式1.4 定义标注处理器1.5 写文件1.5.1 全量写入文件1.5.2 分批写入文件2、读文件2.1 自定义分页处理器2.2 分页读取文件并重新写文件2.3 自定义读取文件监听器2.4 读取文件1、写文件1.1 定义实体类@Datapublic class DemoExportDto { @ExcelProperty("生成时间") private Str

2022-03-31 21:33:54 4184

原创 CaseFormat

Guava的CaseFormat提供了不同的ASCII字符格式之间的转换。代码示例如下: // 连接符转驼峰,首字母小写 结果testData System.out.println(CaseFormat.LOWER_HYPHEN.to(CaseFormat.LOWER_CAMEL, "test-data")); // 连接符转驼峰,首字母大写 结果TestData System.out.println(CaseFormat.LOWER_HYPHEN.to(

2022-02-23 17:38:31 927

原创 ThreadPoolTaskExecutor与ThreadPoolExecutor的区别

ThreadPoolTaskExecutor与ThreadPoolExecutor的区别文章目录ThreadPoolTaskExecutor与ThreadPoolExecutor的区别1. ThreadPoolExecutor2. ThreadPoolTaskExecutor1. ThreadPoolExecutorThreadPoolExecutor 是JDK自1.5添加的线程池。以下是初始化线程池的构造方法。public ThreadPoolExecutor(int corePoolSize,

2021-09-03 18:28:47 596

原创 Springboot自定义Starter

Springboot自定义Starter文章目录Springboot自定义Starter1. 简介2. Starter实现原理3. 自定义Starter3.1 定义需求3.2 创建Starter工程3.3 自定义配置属性类3.4 创建业务类3.5 创建自动配置类3.6 创建spring.factories文件3.7 安装jar包4. 使用Starter1. 简介SpringBoot的Starter可以理解为一个可拔插式的插件,它提供一系列便利的依赖描述符,您可以获得所需的所有Spring和相关技术的一

2021-07-21 00:23:18 235

原创 Java中Files工具类的使用

Java中Files工具类的使用文章目录Java中Files工具类的使用1. 介绍2. 判断文件是否存在3. 删除文件4. 创建文件及文件夹5. 写文件6. 递归删除文件及文件夹1. 介绍Java NIO Files类(java.nio.file.Files)提供了多种方法来处理文件系统中的文件。比直接使用File文件要方便的多了。2. 判断文件是否存在boolean exist = Files.exists(Paths.get(path));boolean notExist = Files.n

2021-07-20 21:24:51 10928

原创 springboot自动装配

文章目录1. 何为自动装配2. 自动装配的优势3. 自动装配原理3.1 @SpringBootApplication3.2 @SpringBootConfiguration3.3 @ComponentScan3.4 @EnableAutoConfiguration4. 总结1. 何为自动装配springboot相较于spring的一大优势就是springboot自动装配,那么何为自动装配呢?在我们之前使用spring进行开发的时候,我们需要通过XML配置文件配置我们所需要的Bean对象到spring容

2021-07-13 22:50:37 3852

原创 Java中LocalDateTime的使用

Java中LocalDateTime使用文章目录Java中LocalDateTime使用1. 简介2. LocalDateTime用法2.1 获取当前的时间2.2 根据年月日格式化时间2.3 获取时区东八区的时间2.4 从LocalDateTime中获取年月日等时间信息2.5 从LocalDateTime中获取LocalDate与LocalTime2.6 日期计算2.7 获取某天的整点时间,通过with修改值2.8 获取毫秒值3. LocalDateTime与Date、String互转3.1 LocalD

2021-06-16 19:28:41 11126

原创 ES聚合查询

ES聚合查询文章目录ES聚合查询1. 聚合查询2. 指标聚合(Metrics aggregations)2.1 平均值2.2 最大值2.3 最小值2.4 求和2.5 统计2.6 多个指标聚合3. 桶聚合3.1 分组聚合3.2 日期直方图聚合3.3 直方图聚合3.4 缺失聚合1. 聚合查询ES 6.3.2中聚合查询分为:桶聚合(Bucket aggregations)、指标聚合(Metrics aggregations)、流水线聚合(Pipeline aggregations)、矩阵聚合(Matrix

2021-06-09 13:45:07 5754

原创 notePad++添加到注册表

1. 前言notepad++安装完成后,在右键菜单中没有notepad++的选项,打开文本文档不是很方便,可以将notepad++添加到Windows注册表中。以方便右键文件时,可以选择用notepad++来打开。2. 创建文档首先创建一个普通的TXT文档,输入以下内容:Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\*\shell\NotePad++]@="Open With NotePad++""Icon"="D:\\soft

2021-01-11 11:14:54 1563

原创 Springboot自定义注解打印方法入参

文章目录1. 背景2. maven配置3. 自定义注解4. 配置AOP切面5. 使用自定义注解打印6. 总结1. 背景在开发过程中需要对程序进行大量的日志打印,其中就包括对方法入参以及返回值的打印,如果每个方法的入参以及出参都手动打印日志,不仅会有大量重复代码,同时代码会比较丑陋,可读性降低,所以需要一个切面来帮助打印日志,这时候就需要我们自己去定义一个自定义注解来做这件事了。2. maven配置首先需要在maven的pom文件中配置依赖。<dependency> <

2020-11-19 23:05:23 1115

原创 ES构建queryBuilder条件查询

文章目录1. maven配置2. 等值查询3. 范围查询4. 模糊查询5. 多条件查询6. 集合查询7. 使用should查询8. should和must配合查询9. 有值查询10. 分页查询开发过程中多使用ES的javaAPI,通过javaAPI来对ES的索引进行操作,对ES的操作一般都是通过构建QueryBuilder对象来进行操作。下面介绍几种QueryBuilder的构建。1. maven配置maven依赖<dependency> <groupId>org.

2020-11-17 23:34:45 21641 1

原创 jar命令解析

jar命令解析文章目录jar命令解析1、什么是jar2、命令格式3、用法示例3.1、用处3.2、解压jar3.3、打包jar3.4、列出jar包内的文件3.5、替换jar包文件3.6、运行jar包1、什么是jarJAR(Java Archive)是Java的归档文件,它是一种与平台无关的文件格式,它允许将许多文件组合成一个压缩文件。JAR文件(Java归档,英语:Java Archive)是一种软件包文件格式,通常用于聚合大量的Java类文件、相关的元数据和资源(文本、图片等)文件到一个文件,以便

2020-07-18 16:41:12 1193

原创 Prometheus监控Springboot程序

Prometheus监控Springboot程序文章目录Prometheus监控Springboot程序1. 添加依赖2. 修改配置文件3. 启用Prometheus监控4. 监控埋点4.1 新建拦截器4.2 注册拦截器5. 验证监控6. 指标类型6.1 Counter6.2 Gauge6.3 Histogram6.4 Summary6.5 自定义Collector7. 安装配置Promethe...

2020-01-19 14:25:13 6122 2

原创 使用jmeter进行压测

使用jmeter进行压测文章目录使用jmeter进行压测1. 介绍2. 安装3. 使用3.1 启动3.2 录制脚本4. 进行压测1. 介绍Apache JMeter是一款纯java编写负载功能测试和性能测试开源工具软件。相比Loadrunner而言,JMeter小巧轻便且免费,逐渐成为了主流的性能测试工具。2. 安装去Apache官网下载安装包到本地,我使用的是apache-jmeter...

2020-01-19 12:40:26 343

原创 Git常用命令总结

Git常用命令总结文章目录Git常用命令总结1. git与GitHub2. 一些概念1. 版本控制2. git三种状态3. 工作区域概念3. Git的安装与配置3.1. 下载Git3.2. 安装Git3.3. 定制git环境3.4. 设置别名4. git 基础4.1 获取git仓库4.2 查看状态4.3 追踪文件4.4 取消暂存文件4.5 移动和删除文件4.6 查看日志4.7 提交更新4.8 撤...

2019-11-07 20:50:34 143

空空如也

空空如也

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

TA关注的人

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