自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 CompletableFuture详解

最近有一个接口需求,需要从多个服务获取数据返回给前端,如果串行一个一个获取的话,假如每个服务1s,5个服务就要5s,服务越多时间越久。这时候,我们可以将串行获取改为并行获取,大大降低了耗时。并行获取虽然提高了效率,但也有一个问题,如果某个服务异常阻塞,这个接口会一直等到这个服务超时返回(根据设置的超时时间),这时候就需要一个功能,那就是超时获取。超时的并行获取,也是并行去获取数据,但我们规定了一个时间,比如1s,那么获取数据的操作就会在1s返回,没有在规定时间内返回的数据将会被丢弃。

2024-01-19 11:27:02 1167 1

原创 xxl-job版本升级

改为通过 “XxlJobHelper.getJobParam” 获取任务参数并替代方法入参,通过 “XxlJobHelper.handleSuccess/handleFail” 设置任务结果并替代方法出参,示例代码如下;2、移除旧类注解JobHandler,推荐使用基于方法注解 “@XxlJob” 的方式进行任务开发;1、注意:XxlJobSpringExecutor组件个别字段调整:“appName” 调整为 “appname” ,升级时该组件时需要注意;将加密的字符串复制到user表。

2023-12-17 16:49:04 557 1

原创 GitLab安装

由于GitLab版本升级麻烦,仓库项目配置较少,于是重新安装配置。新服务器Linux版本为Alibaba Cloud Linux 3,需要下载el8版本的GitLab。

2023-12-16 11:41:50 427

原创 Ubuntu配置Java开发环境

由于使用Java11的应用占比超过了Java8,且Spring Boot3支持的最低版本是Java17。所以安装jdk8,jdk11,jdk17三个版本。1、下载jdk2、解压安装3、配置软链接后面的数字越大,优先级越高,自动选择jdk8。4、修改环境变量,使用软链接5、验证切换版本。

2023-12-14 10:53:38 826 1

原创 Win10安装Ubuntu双系统

Win10安装Ubuntu双系统

2023-12-14 09:32:26 2110 1

原创 SpringBoot整合log4j2

1、pom.xml 配置<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> <!-- 去除springboot默认日志框架 --> <exclusions> <exclusion> <groupId>o

2021-05-25 23:39:27 91

原创 Java中List删除元素的方法

1、for 循环倒序删除public static void main(String[] args) { List<String> list = new ArrayList<String>(); list.add("1"); list.add("1"); list.add("2"); list.add("3"); list.add("4"); list.add("5"); CopyOnWriteArrayList<String> c

2021-05-22 18:31:31 738

原创 List去重的几种方式

介绍四种不同的方法对 ArrayList 中的数据进行去重1、使用 LinkedHashSet 对 List 去重public class ListTest { public static void main(String[] args) { List<Integer> numList = new ArrayList<Integer>(Arrays.asList(1,1,1,2,3,3,3,4,5,5,6)); S

2021-03-23 23:29:33 3599

原创 Linux之netstat命令

netstat 可以用来打印网络连接、路由表、连接的数据统计、查看后台服务进程的相关状态等。netstat 命令,对应的选项比较多,功能比较强大,下面列举常用的选项。打印所有连接[root@javapoet ~]# netstat -a打印 TCP 或 UDP 连接[root@javapoet ~]# netstat -t // 列出 TCP 协议的连接[root@javapoet ~]# netstat -u // 列出 UDP 协议的连接禁用反向域名解析直接使

2021-03-22 17:30:22 209

原创 Java中的final关键字

修饰类:表示类不可被继承修饰方法:表示方法不可被子类覆盖,但是可以重载修饰变量:表示变量一旦被赋值就不可以更改修饰成员变量(1)如果修饰的是类变量,只能在静态初始化块中指定初始值或声明该变量时指定初始值(2)如果修饰的是成员变量,可以在非静态初始化块声明该变量或者在构造器中初始化值修饰局部变量局部变量必须由我们自己显示初始化。使用final修饰局部变量时,可以在定义时指定默认值,也可以不指定默认值,在后面的代码中对final变量进行初始化示例:public class ..

2021-03-20 17:09:26 50

原创 ==和equals的区别

==和equals的区别1、==2、equals3、测试1、==== 对比的是栈中的值基本数据类型,直接比较变量值是否相等;引用类型,比较的是变量指向的是内存对象的地址2、equalsObject 中的 equals 方法默认也是采用 == 比较,通常会重写equalspublic boolean equals(Object obj) { return this == obj;}如果没有对 equals 方法进行重写,则比较的是引用类型的变量所指向的对象的地址

2021-03-18 23:17:11 80

空空如也

空空如也

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

TA关注的人

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