自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 IDEA自带 .http 请求工具文档

IDEA 自带的 HttpClient,可以在 IDEA 内模拟发送请求,并将请求声明在 .http 文件内,能够实现自动化脚本测试。本文提供 IDEA HttpClient 请求的使用文档。

2024-03-04 17:36:51 1280

原创 Swagger3 GET请求,使用对象接收 Query 参数,注解怎么写?

简中互联网上就没一个靠谱的答案,最终翻到了 Github Issue 上才解决,真 TMD…… CSDN 就一坨 shit mountain。

2023-11-13 10:18:55 1285 4

原创 关于 JWT、JWS、JWE

JWT、JWS、JWE 格式与差异介绍

2022-07-25 20:18:58 6173 5

原创 记一次WebFlux应用内存泄漏排查

背景公司项目存在一个服务,类似于爬虫,需要解析给定的URL,从返回的HTML中提取页面的标题、封面图、摘要、icon等信息。由于这是一个无DB访问的纯内存服务,且下游服务(需解析的URL地址)并非内部服务,无需考虑并发压力,在服务搭建时选用WebFlux作为web层框架,选用spring的WebClient作为请求下游服务的HTTP客户端。服务部署于k8s容器内,JDK版本为OpenJDK11,Pod配置4C4G,Java服务配置最大堆内存2G。问题描述服务上线后请求压力不大,但长时间运行后,服务堆

2022-02-21 11:11:11 1256

原创 maven 下载源码提示connect refused 127.0.0.1

maven 下载源码提示connect refused 127.0.0.1修改host没有用preference->Build,Execution,Deployment->Build Tools->Maven->Importing->VM options for importer修改为-Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true -Dmaven.wagon.http

2021-02-03 15:16:52 2743 6

原创 Windows环境下ElasticSearch启动报错:could not find java in bundled jdk

错误信息could not find java in bundled jdk at "D:\Program Files\elasticsearch\elasticsearch-7.9.3\jdk\bin\java.exe

2020-11-06 19:52:59 5458 2

原创 Netty学习笔记 - Unix的五种网络通信模型

文件描述符Linux将所有外部设备都看作一个文件,对文件的操作会产生文件描述符(fd,file descriptor)。对socket的读写描述符称为socket描述符(socketfd)。描述符是一个数字,指向内存中的一个结构体。Unix的五种网络通信模型阻塞I/O默认情况下,所有文件操作都是阻塞I/O。在进程空间执行读取数据的recvfrom,系统调用会等到数据包达到并复制到用户缓冲区或发生错误才返回,在此期间一直等待。因此被称为阻塞I/O。下图摘自《Netty权威指南》非阻塞I/O执

2020-09-27 15:31:57 220

原创 MySQL自增主键知识点总结

自增主键的实现####自增值的存储MyISAM引擎将当前自增值存储在表数据文件中。InnoDB引擎在5.7及之前将当前自增值存储在内存中,MySQL重启时从表中查询自增列最大值+步长作为当前自增值。InnoDB引擎在8.0及之后版本中将自增值变动记录存储在redo log中,重启MySQL后根据redo log恢复之前的自增值。自增值的变化执行插入语句时,如果自增列的值不指定,或指定为0或null,则插入时将表当前自增值填入该列,并增长自增值(当前自增值+步长)。执行插入语句时,如果自增列指定

2020-09-20 23:21:45 187

原创 MySQL自增字段的自增值超过字段声明的范围怎么办

问题来源面试遇到一个问题,设置自增主键的数据类型为int(10),范围设置的比较小,如果自增超过这个范围会怎么样?当时一脸懵逼,确实没考虑过这个情况。思路与猜测首先是知道,字段类型声明为int(10),后面的长度10只是zerofill的长度,不影响数据的存储,也就是自增超过的范围应该是int类型字段的最大值。| 类型 | 存储占用字节 | 最小值 | 最大值 || 无符号int | 4 | 0 |dd || 有符号int | 4 | -2147483648(-2^31) | 21474836

2020-09-12 12:14:48 1949 2

原创 Redis知识点总结

RedisRedis是一个基于内存的KV存储数据库。数据读写为单线程操作,线程安全;基本是内存操作,且没有并发资源竞争,性能较好;与客户端连接采用多路复用IO,支持连接数较多;支持数据持久化;value支持数据类型较多,满足日常需求;支持主从模式、集群模式;哨兵监控,可用性高;单线程 与 多路复用模型Redis使用一个线程接收网络请求,一个线程执行从网络请求读取到的指令。多路复用模型是用一个线程监听全部的网络连接,并不阻塞的读取数据,只在哪个网络连接的数据就绪时,从连接的流中读取指令数

2020-09-10 08:10:45 94

原创 JVM内存分区与GC知识点

Java 内存分区本地方法栈:native方法调用时的方法调用栈,存储本地栈帧虚拟机方法栈:Java的栈,每个线程有一个线程调用栈,栈的元素是栈帧。栈帧包括:局部变量表、操作数栈、指向堆中对象的引用、返回地址、附加信息。每个方法调用时,回向当前指向的线程栈顶部压入一个栈帧,栈帧的大小是固定的,虚拟机通过解析.class文件可以得知。堆:堆是所有Java线程共享的一个内存区域,用于分配对象。方法区:存储类的信息(类名、方法信息、字段信息)、静态变量、常量池。程序计数器:用于记录下一条要执行的指令,

2020-09-06 22:29:34 109

原创 JUC -AbstractQueuedSynchronizer 源码:从独占与共享的角度分析(待续)

关于AbstractQueuedSynchronizer这个类作用的理解AbstractQueuedSynchronizer是一个同步器,本身并没有限制只能用于实现锁,它是一个资源同步器,用于保证独占占有资源或共享占有资源。在AbstractQueuedSynchronizer中,“资源”指的是一个int类型的变量state,“独占占有资源”是指在同一时刻,只可能有一个线程能够访问资源(state),“共享占有资源”则是同一时刻可能有多个线程能够访问资源。如何实现独占占有资源?AbstractQueu

2020-08-28 07:51:03 132

原创 Eureka高可用注册中心,available-replicas不出现分布式注册中心

在学习Eureka中配置高可用注册中心,启动两个注册中心c1和c2,但是在c1注册中心的available-replicas项中没有c2存在,反而是unavailable-replicas中有; 在网上搜索了之后,说是如下原因:eureka.client.serviceUrl.defaultZone配置项的地址,不能使用localhost,要使用service-center-1之类的域名,通过h

2020-08-06 08:42:04 3904 6

原创 基于RSocket的Java与浏览器JS通信

RSocketJava与RSocketJS通信

2020-08-05 17:18:35 1686

原创 小程序 canvas绘制圆角图片问题

小程序 canvas绘制圆角图片要用arc

2020-07-01 16:11:32 919

原创 MySQL order by之后用占位符导致排序失效

order by之后使用PreparedStatement的占位符导致排序失效

2020-07-01 16:08:40 1178

原创 css实现保持元素宽高比

原理元素的padding值如果使用百分比,那这个百分比是相对于父元素宽度而言的,padding-top和padding-bottom指定百分比时也是相对于父元素高度而言;IE盒模型中,width = content + padding + border,因此只设置padding也会使元素在页面上占据一部分区域;chromium内核浏览器大多采用IE盒模型而非W3C标准盒模型;验证写两个...

2020-01-14 09:22:28 1240

原创 Lambda表达式获取传入的方法引用的方法名

LambdaQueAbstractWrapperAbstractLambdaWrapperLambdaUtilseq(boolean, R, Object )addCondition(boolean, R, SqlKeyword, Object)columnToString(SFunction<T, ?>, boolean)resolve(SFunction<T, ?>)L...

2019-09-18 08:08:28 11331 8

原创 设置自己的SpringBoot自动配置

声明在META-INF/spring.factories中的自动配置,只要spring.factories文件被扫描到,声明的配置类都会被配置,不论配置类上是否有@Configuration注解(但是方法上必须有@Bean注解);# spring.factoriesorg.springframework.boot.autoconfigure.EnableAutoConfiguration=...

2019-04-17 10:31:22 177

原创 如何依赖一个packaging为war的模块

Maven子模块,打包为war,如果其他项目需要依赖这个子模块,可以通过插件来实现;先在需要打包为war的模块中添加插件 <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> ...

2019-01-16 10:30:54 662

原创 SpringCloud Maven依赖配置

本机只有Edgware.SR5可以依赖,Einchley.SR2依赖找不到(估计是我的Maven配置问题)Edgware.SR5 对应的SpringBoot版本为 1.5.x,否则可能报错java.lang.NoSuchMethodError: org.springframework.boot.builder.SpringApplicationBuilder.<init>...

2018-12-23 13:13:04 14094 1

原创 SpringBoot Maven依赖配置 starter

SpringBoot核心依赖:1. 以父项目形式依赖&lt;parent&gt; &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt; &lt;artifactId&gt;spring-boot-starter-parent&lt;/artifactId&gt; &lt;version&gt;2.0.1.RELEASE&lt...

2018-12-23 13:12:38 3938

原创 Eureka注册中心配置,Client配置,高可用配置中心配置

Eureka注册中心server: port: 10081# 禁止注册中心将自己注册为clienteureka: instance: hostname: sky.brozen.top client: # 是否将自己注册到注册中心 register-with-eureka: false # 是否需要检索服务注册信息 fetch-reg...

2018-12-22 22:46:58 1824

原创 SpringBoot全局错误映射

需要自定义ErrorController,继承org.springframework.boot.autoconfigure.web.BasicErrorController,重写两个方法:// 错误映射到Html,Accept-Type为text/html的 public ModelAndView errorHtml(HttpServletRequest request, HttpServletR

2017-12-25 11:55:54 1294

原创 SpringBoot Actuator端点访问失败

Actuator部分端点的访问需要鉴权,否则访问返回401失败; 此时需要在配置文件中将安全校验关闭:# ymlmanagement: security: enabled: false# propertiesmanagerment.security.enabled=false需要鉴权的端点为Sensitive端点,如下: ID 描述 Sensitive autocon

2017-12-25 11:46:42 4652

空空如也

空空如也

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

TA关注的人

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