自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 浏览器缓存得学习

平时所说的强制缓存,对比缓存,以及 Cache-Control 等,也都归于此类。我们可以在 Chrome 的开发者工具中,Network -> Size 一列看到一个请求最终的处理方式:如果是大小 (多少 K, 多少 M 等) 就表示是网络请求,否则会列出 from memory cache, from disk cache 和 from ServiceWorker。这是 HTTP 1.0 的字段,表示缓存到期时间,是一个绝对的时间 (当前时间+缓存时间),如。

2024-10-17 10:56:24 412

原创 springsecurity学习

1、当请求头包含中文属性时,springsecurity可能会抛出不允许的头部值错误。

2024-10-14 10:37:39 90

原创 雪花算法学习

雪花算法(Snowflake)是一种生成全局唯一ID的分布式算法。它的主要功能是在分布式系统中生成一个全局唯一的ID,且ID是按照时间有序递增的。1.核心思想Snowflake算法使用一个64位的二进制数字作为ID。这64位long型ID被分割成四个部分:符号位、时间戳、工作机器ID、序列号。通过这几部分来表示不同的信息,将数据映射到具有特定结构的分布式系统中,实现数据的存储和查询。该算法由一系列节点组成,每个节点负责存储数据的一部分。

2024-10-08 13:54:54 1036

原创 ECHARTS学习

type:'category'代表类目轴。适用于离散的类目数据,类目数据可自动从series.data或者xAxis.data设置类目数据。5、刻度标签xAxis.axisLabel.formatter:'{value} 米' -给标签值增加单位。.symbol:'arrow'左右有箭头 :['none','arrow']右边是箭头。而xAxis指定了类目型的data,所以Echarts也能识别出这是类目型的坐标轴。,所以这里的type: 'category'可以不写。4、刻度 xAxis.

2024-04-30 16:26:03 572

原创 spring cloud gateway

通过实现Ordered接口 ,每个过滤器必须指定一个int类型order值,值越小,优先级越高,执行顺序越靠前。- Path=/card/** 代表以card开头的多级路径请求 ,多级和一级请求都会生效。- Path=/card/* 代表以card开头的一级路径请求 ,只有一级请求会生效。反向代理(请求的转发)、路由和负载均衡、身份认证和权限控制、对请求的限流。路由的目标地址,http代表固定地址,lb代表根据服务名称负载均衡。1、路由id(id) 当前路由的唯一标识。2、路由目标(uri)

2024-02-02 10:08:51 651 2

原创 数字验证马实现

【代码】数字验证马实现。

2023-11-29 14:22:27 462

原创 @WebServlet和文件下载

1、需要在启动类设置@ServletComponentScan 这样才能扫描到我们创建的servlet2、实现自己的Servlet最常用的就是实现Servlet接口,或者直接集成HttpServlet。自己实现接口的形式要自己重写service方法,而集成HttpServlet的话一般直接重写doPost,doGet等方法实现自己的处理逻辑3、使用注解@WebServlet。

2023-04-21 14:41:52 615 1

原创 DUBBO原理20231219

providers: 服务提供者目录,记录着服务提供者的ip、端口等信息。consumers: 服务消费者目录,记录服务消费者的元数据信息,服务提供者并不会用到服务消费者的信息,这里要记录消费者的信息,是给服务治理中心(dubbo-admin)使用的。routers: 用于消费者路由策略元数据信息。configurators:用于服务者动态配置URL元数据信息。

2023-04-14 16:27:29 559

原创 DUBBO SPI

SPIDubbo 的可扩展性是基于 SPI 去实现的,而且Dubbo所有的组件都是通过 SPI 机制加载。SPI 全称为 (Service Provider Interface) ,是一种服务提供发现机制。可以将服务接口与服务实现分离以达到解耦可拔插、大大提升了程序可扩展性。一个接口有多个实现类,具体使用哪个实现类,通过SPI机制让用户来决定。@SPI。

2023-04-06 16:36:33 293

原创 Socket中的backlog参数和缓冲区1108

backlog参数为socket套接字监听端口时,内核为该套接字分配的一个队列大小,在服务端还没有来得及处理请求时暂时缓存请求所用的队列。第一次握手时,因为客户端与服务器之间的连接还未完全建立,连接会被放入半连接队列中。服务器处理Accept事件是在TCP三次握手,也就是建立连接之后,服务器会从全连接队列中获取连接并进行处理。服务端正常处理请求完成后,休眠的连接是不占用backlog队列位置的,连接全部成功。时,全连接队列中堆积的连接数大于SO_BACKLOG设置的值是,便会抛出异常。

2023-04-03 10:54:35 827

转载 新建一个springboot工程|远程debug

1

2023-03-01 14:13:57 160

原创 字节和字符和编码

1

2023-02-06 16:05:00 495

原创 IO和请求连接线程的关系

1

2023-01-16 12:53:59 303

原创 Tomcat组件生命周期管理:LifeCycle

1

2023-01-10 10:40:27 340

原创 根据TOMCAT类分析servlet的初始化

tomcat servlet

2023-01-07 13:04:39 780

原创 IO模型详解

1

2023-01-04 15:15:53 2543

原创 Tomcat的Connector测试类

tomcat

2022-12-02 10:40:53 190

原创 Tomcat连接器和NIO-ServerSocketChannel

nio

2022-12-02 10:21:30 510

原创 Htt1NioProto col测试类和计算机网络20231211

1

2022-12-01 15:45:13 460

转载 TCP和UDP的区别

tcp

2022-10-21 14:10:57 161

原创 HTTPS原理

tpps

2022-10-20 10:33:28 362

原创 TCP三次握手和四次挥手

tcp

2022-10-19 16:12:29 428

原创 加密解密、加签验签

1

2022-10-18 16:32:53 208

原创 java程序连接sqlserver报错

sqlserver

2022-08-25 13:34:13 723

原创 linux安装nginx

nginx部署

2022-08-25 13:29:14 182

原创 Spring的Environment|ConditionalOnProperty

env

2022-08-14 13:57:33 212

原创 Spring的循环依赖

循环依赖

2022-08-09 15:43:22 171

原创 Vue3和Element-Plus

npm install -g @vue/clivue -Vvue create vue-element-plus只选择基础的 npm install 拉取依赖npm-moudles:第三方的依赖、组件

2022-07-01 15:07:00 1348

原创 springboot整合websocket

WebSocket协议是基于TCP的一种新的网络协议。它实现了浏览器与服务器全双工(full-duplex)通信——允许服务器主动发送信息给客户端。websocket 协议是在 http 协议上的一种补充协议,是 html5 的新特性,是一种持久化的协议。我们都知道HTPP协议是基于请求响应模式,并且无状态的。HTTP通信只能由客户端发起,HTTP 协议做不到服务器主动向客户端推送信息。举例来说,我们想要查询当前的排队情况,只能是页面轮询向服务器发出请求,服务器返回查询结果。轮询的效率低,非常浪.

2022-05-27 11:02:29 415

原创 sentinel

Sentinel实战:为系统做限流保护我们已经知道了 Sentinel 的三大功能:限流降级系统保护。现在让我们来了解下具体的使用方法,以限流来演示具体的步骤。引入依赖首先肯定是要先引入需要的依赖,如下所示:<dependency> <groupId>com.alibaba.csp</groupId> <artifactId>sentinel-core</artifactId> <version&..

2022-05-02 00:30:12 246

原创 腾讯云nacos连接失败

需要放开端口9848

2022-04-07 13:15:54 924

原创 跟着尚硅谷学习微服务

1、服务治理springcloud封装了Netflix的Eureka模块来实现服务治理在传统的rpc远程调用框架中,管理每一个服务与服务之间依赖关系比较复杂,所以需要使用服务治理,可以实现服务调用、负载均衡、容错等,实现服务发现于注册。Eureka采用CS的设计架构,Eureka Server作为服务注册功能的服务器,它是服务注册中心。而系统中的其他微服务,使用Eureka的客户端连接到Eureka Server并维持心跳连接。这样系统的维护人员就可以通过Eureka Server来监控系统中

2022-02-23 23:49:27 178

原创 继续学习mysql|241017

三层结构:1、连接层:客户端和服务器建立连接,客户端发送sql到服务器端2、SQL层(服务器层):对SQL语句进行查询处理;与数据库文件的存储方式无关;3、存储引擎层:与数据库文件打交道,负责数据的存储和读取1、SQL执行流程innodb存储引擎mysql5.7存放文件:a.frm-描述表结构文件、字段长度等;a.ibd-存放数据信息和索引信息mysql 8.0不再单独提供frm文件,而是合并在ibd文件里。B+树层次一般不超过4层:减少io次数聚簇...

2022-02-14 21:54:33 144

原创 继续学习JUC

1、进程系统中正在运行的一个应用程序;程序一旦运行就是进程;资源分配的最小单位。2、线程程序执行的最小单位;系统分配处理器时间单元的最小单位;3、wait和sleep的区别sleep是Thread的静态方法;wait是Object的方法,任何实例对象都能调用;sleep不会释放锁,也不需要占用锁;wait会释放锁,但调用的前提是当前线程占用锁(即代码要在Synchronized中);都可以被interrupted中断;4、守护线程比如:垃圾回收线程没有用户线程,都是守

2022-02-08 22:10:09 339

原创 我要学习JVM

66-1、堆、方法区 线程共享,一个java进程只有一个堆和一个方法区。2、在jvm启动时创建堆,空间大小确定;堆内存的大小是可以调节的。3、-Xms10m 初始堆空间 -Xmx10m最大堆空间 -X是jvm的运行参数 ms memory start -Xms等价于-XX:InitialHeapSize -Xmx等价于 -XX:MaxHeapSize 默认初始化堆内存:计算机内存/64;最大堆内存:计算机内存/4 一旦超过堆区最大内存,会抛出OutOfM...

2022-01-24 21:30:05 265

原创 并发编程vola

1、多线程下变量的不可变性多个线程修改共享的成员变量(对象的属性、类的静态属性),会出现一个线程修改了成员变量的值,另外一个线程不能看到该变量的最新值。 private volatile int n = 0; public static void main(String[] args) { RuoYiServletInitializer initializer = new RuoYiServletInitializer(); Runn

2022-01-22 23:12:05 224

原创 我要学习HTML

1、<head>标签<title>网页标签名称</title>2、<script>标签用于定义客户端脚本,比如javascript。既可以包含脚本语句,也可以通过src属性指向外部脚本文件。当碰到script这个标签,浏览器会自动运行js解析器。如果想在<div>标签里输入<script>,可以利用&lt &gt假如内部的代码没有位于某个函数中,那么这些代码会在页面加载时立即执行!绝对地址

2022-01-20 21:46:18 601

原创 模板引擎Thymeleaf|vue和spr合体

1、虽然现在很多开发都采用了前后端完全分离的模式,即后端只提供数据接口,前端用ajax调用;但这种模式不利于seo,有些场景使用模板引擎会更方便。2、SpringBoot与模板引擎Thymeleaf引入jar包<artifactId>spring-boot-starter-thymeleaf</artifactId>配置spring:thymeleaf:prefix: classpath:/templates/ //指定模板所在的目录,...

2022-01-20 20:51:32 497

原创 模拟跨域错误

1、浏览器f12打开控制台2、输入请求代码,回车3、在postman里面获取调用代码

2022-01-17 21:47:51 1907

原创 Mybatis复杂查询(一对多)

通过ResultMap标签,在标签里定义Collection标签1、按查询嵌套处理实际两条执行sql <select id="getTeacher2" resultMap="teacherStu2"> select * from teacher where id = #{id} </select> <resultMap id="teacherStu2" type="com.me.domain.Teacher2" >

2022-01-13 22:24:35 202

空空如也

空空如也

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

TA关注的人

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