自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 jwt,session,cookie.token关系以及如何使用shiro整合jwt

但token不同,token是开发者为了防范csrf而特别设计的令牌,浏览器不会自动添加到headers里,攻击者也无法访问用户的token,所以提交的表单无法通过服务器过滤,也就无法形成攻击。token 也称作令牌,由uid+time+sign[+固定参数] token 的认证方式类似于临时的证书签名, 并且是一种服务端无状态的认证方式, 非常适合于 REST API 的场景. 所谓无状态就是服务端并不会保存身份认证相关的数据。就是说这一次请求和上一次请求是没有任何关系的,互不认识的,没有关联的。

2024-05-18 21:18:23 21

原创 延时队列的6种实现方法及优缺点

JDK中提供了一组实现延迟队列的API,位于包下DelayQueue。DelayQueue是一个(无界阻塞)队列,它本质就是封装了一个(优先队列),内部使用完全二叉堆(不知道的自行了解哈)来实现队列元素排序,我们在向DelayQueue队列中添加元素时,会给元素一个Delay(延迟时间)作为排序条件,队列中最小的元素会优先放在队首。队列中的元素只有到了Delay时间才允许从队列中取出。

2024-05-11 22:46:35 1297 1

原创 面试题:redis 是单线程还是双线程

"redis是单线程的" 这句话我们耳熟能详。但它有一定的前提,redis整个服务不可能只用到一个线程完成所有工作,它还有持久化、key过期删除、集群管理等其它模块,redis会通过fork子进程或开启额外的线程去处理。所谓的单线程是指从。

2024-05-08 16:24:37 578 1

原创 sql学习笔记-为什么B+树磁盘io一般只需要1-3层

我们前面也说了,非叶子节点存放的是主键值与指针,所以这里假设主键类型为bigint,占用8Byte,指针可以设置为占用6Byte,总共就为14Byte,这样就可以算出一个节点大概可以存放多少个指针了(指针指向下一层节点),大概为16KB/14Byte=1170个。因为B树的节点(无论是叶子节点还是非叶子节点),都会保存数据,所以相当于B+树的话,B树的非叶子节点能保存的指针就变少了,保存同等数据量的情况下,B树指针变少了就只能增加树的高度了,就会导致磁盘IO次数变多,从而影响性能。

2024-03-14 19:07:44 624

原创 类加载与反射

但是上个例子里面,我们自定义了一个String,它的类路径不是java.lang.String,所以他不会被启动类加载器加载,而是最后被应用程序类加载器加载,所以它并不是我们想要的那个String,不是那个可以用字符串赋值的类型String,这时候将一个字符串赋值给这个“String”,在编译的时候就会出错,因为我们自定义的String不具备这个接收字符串赋值的功能。加载这个动作,就是由类加载器完成的。类是一类事物的描述,类包含了这类事物的信息,比如车这个类,包含了车的类型,用途,行为信息,可以在路上跑。

2023-09-28 20:52:38 823

转载 hashcode详解

hash详解

2022-07-26 11:32:27 643 1

空空如也

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

TA关注的人

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