欢迎来到勇者の小栈

   七岁几胆敢预言自己,操一艘战机

Spring源码——Bean完整的生命周期详解

一、refresh方法Spring容器启动时会创建IOC容器,在创建容器时会调用refresh()方法,整个容器就是通过该方法完成所有bean的创建以及初始化。@Overridepublic void refresh() throws BeansException, IllegalStateExce

Java延迟队列——DelayQueue

一、DelayQueue的定义public class DelayQueue<E extends Delayed> extends AbstractQueue<E> implements BlockingQueue<E>DelayQueue是一个无界的Blocki

使用FileZilla搭建可供外网访问的ftp服务器(Frp/花生壳)

FTP 是一种基于 TCP 的应用层协议,它不支持 UDP 协议。 FTP 工作在一种特殊的服务机制上,它使用两个端口,一个 ‘数据’ 端口和一个 ‘命令’ 端口(也称为控制端口)。 通常情况下,端口 21 用作命令端口,端口 20 用作数据端口。一、主动模式和被动模式1、主动模式客户端从一个任意的

使用frp端口映射实现内网穿透(SSH、HTTP服务)

一、下载通过内网穿透的原理和实现方式的学习我们已经明白了内网穿透的原理,想要实现内网穿透就需要让内网实现与具有公网IP的设备进行绑定。我们这里使用frp(一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议。可以将内网服务以安全、便捷的方式通过具有公网 I

什么是接口幂等性及其实现

一、定义幂等(idempotent、idempotence)是一个数学与计算机学概念,常见于抽象代数中。在编程中一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同。幂等函数,或幂等方法,是指可以使用相同参数重复执行,并能获得相同结果的函数。这些函数不会影响系统状态,也不用担心重复执

Java序列化与反序列化

序列化:将 Java 对象转换成字节流的过程。反序列化:将字节流转换成 Java 对象的过程。当 Java 对象需要在网络上传输 或者 持久化存储到文件中时,就需要对 Java 对象进行序列化处理。一、定义Java对象序列化是将实现了Serializable接口的对象转换成一个字节序列,能够通过网络

全局唯一ID(自增ID、UUID、雪花算法)

一、介绍系统唯一id是我们在设计阶段常常遇到的问题。在复杂的分布式系统中,几乎都需要对大量的数据和消息进行唯一标识。在设计初期,我们需要考虑日后数据量的级别,如果可能会对数据进行分库分表,那么就需要有一个全局唯一id来标识一条数据或记录。生成唯一id的策略有多种,但是每种策略都有它的适用场景、优点以

内网穿透的原理和实现方式

一、定义内网穿透也成NAT穿透,进行NAT穿透是为了使具有某一个特定源IP地址和源端口号的数据包不被NAT设备屏蔽而正确路由到内网主机。NAT(网络地址转换)设备自动屏蔽了非内网主机主动发起的连接,也就是说从外网发往内网的数据包将被NAT设备丢弃掉。这使得位于不同NAT设备之后的主机无法交换信息。这

SpringBoot项目Http 406错误问题解决

SpringBoot项目Http 406错误问题解决背景自定义了返回类控制器使用@ResponseBody注解标记不加@ResponseBody的话会将方法返回的值作为视图名称,并自动匹配视图去显示,而加上@ResponseBody就仅仅是将方法返回值当作内容直接返回到客户端,并且会自适应响应头的c

欢迎来到勇者の小栈

回到白天     |  进入黑夜