自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

不堪提

海内存知己,天涯若比邻

  • 博客(13)
  • 收藏
  • 关注

原创 Spring Security + Gitee单点登录

通过集成 spring-boot-starter-oauth2-client,可以自动完成授权码模式的多次调用,最终获取到 Gitee 的 Token。拿到 Token 后,通过调用 Gitee 提供的用户信息接口,就可以获取到用户的相关信息了。,应用回调地址是后端服务的ip与端口,后面的/login/oauth2/code/gitee则是固定的,千万别改。有关 client-id,client-secret,需要在gitee里面账号设置-第三方应用,里面新建一个应用。下面展示一下前后端的核心代码。

2025-04-15 19:11:44 188

原创 【Redis数据结构·链表】之前仆后继

Redis 通过 adlist(双向链表)与 quicklist(链表 + 压缩列表)管理 List 类型,使其在头尾操作时能保持高效的 O(1) 性能,并结合压缩技术来节省内存。在需要频繁头尾操作或顺序处理的场景中,Redis 的链表往往表现优秀;若需要随机访问或有序检索,可考虑使用其他数据结构。对链表在 Redis 中的实现理念有了深入了解后,开发者能更好地针对业务需求优化 Redis 应用与系统设计。

2025-02-06 21:46:32 796

原创 【Mysql】快来看看面试官最喜欢问的Mysql索引知识啦

通过这篇文章,我们深入了解了 MySQL 中的几种常见索引类型及其实现方式。重点讲解了 MySQL 数据存储结构中的聚簇索引和辅助索引,详细介绍了 B+ 树在 MySQL 中的应用及其优势。MySQL 数据存储结构MySQL 主要通过聚簇索引来存储全部数据。聚簇索引是一种数据存储方式,不是一种单独的索引类型。聚簇索引的实现方式数据行存储在索引的叶子页中,主键值与相邻数据行紧密存储。推荐使用自增主键,避免无规则的 UUID 以减少页分裂。B+ 树MySQL 使用 B+ 树作为数据存储结构。

2024-12-21 18:28:06 1141

原创 【杂谈】如何撰写出色的技术文档

在技术的浩瀚海洋中,一份优秀的技术文档宛如精准的航海图。它不仅是知识传承的载体,更是团队协作的桥梁,甚至可以说是产品成功的幕后英雄。然而,打造这样一份出色的技术文档并非易事。在这篇文章中,我将分享一些撰写优秀技术文档的经验和技巧,帮助你清晰阐释复杂技术,完美融合文档结构与内容。

2024-12-21 15:36:53 623

原创 【杂谈】如何拷贝别人的站点

下载完成后,会在 jdk-docs 文件夹中看到所有下载的 HTML 文件,并且这些文件中的链接已经被转换为本地链接。这样就可以在没有网络连接的情况下离线浏览这些文档了。今天接到了一个奇怪的需求,已知有个工具类网站,上面罗列了各种开源项目的文档。我需要将里面提供的JDK,MySQL文档拷贝到本地的网站里面。大家都知道这是JDK的API文档,需求是将其集成到我们自己的网站里面,当然由于我们自己的网站部署在内网服务器,是无法联网的,所以需要将该API文档的所有HTML页面下载到本地。

2024-12-20 22:39:14 453

原创 【Redis数据结构·SDS】之另起炉灶

C字符串不记录自身的长度,在执行字符串拼接的时候,若原字符串的内存长度不足以支持拼接时,就会溢出到相邻的内存空间中,造成别的数据内容的修改。注:SDS字符串的最大容量是512MB,当扩容时不到1MB,扩容时会分配原先一倍的长度,当扩容时超过1MB是,只会再增加1MB。SDS由于里面free代表未使用的空间数量,当字符串长度添加时,若free足够使用,就不会进行分配内存。而二进制数据是存在空格的,所以是没法保存的,而SDS则是可以正常保存的。键是SDS类型,值是list,list存放的字符串也是SDS类型。

2024-12-19 21:58:39 613

原创 【mac】如何安全的SSH到自己家里的mac

截止目前,已经可以通过公网ip加上外部端口来访问家里的电脑了,但是通过ssh的密码登录总是觉得有点不安全,如果你有常用的远程登录的机器的话,比如公司,那就可以通过公钥来登录。首先需要一个公网ip,以便于在互联网的环境中,能够访问到你家里的网络地址。那么如何看当前家里的公网ip呢,我是小米的路由器,使用小米路由器的app“小米wifi”,在他的上面就可以看到当前的ip地址。需要注意的是,外部端口不要使用22端口,尽量使用一些长的,比如2022,2024之类的跟ssh没有关系的端口,防止被攻击。

2024-12-15 22:48:06 1479

原创 【Redis数据结构·跳跃表】之异火排行榜

跳跃表是有序集合的底层实现之一。❑Redis的跳跃表实现由zskiplist和zskiplistNode两个结构组成,其中zskiplist用于保存跳跃表信息(比如表头节点、表尾节点、长度),而zskiplistNode则用于表示跳跃表节点。❑每个跳跃表节点的层高都是1至32之间的随机数。❑在同一个跳跃表中,多个节点可以包含相同的分值,但每个节点的成员对象必须是唯一的。❑跳跃表中的节点按照分值大小进行排序,当分值相同时,节点按照成员对象的大小进行排序。

2024-11-28 20:09:17 625

原创 【前端】iframe嵌入单点登录链接后,一直访问登录页面?

sessionStorage:仅在同一窗口或标签页中共享,不同窗口或标签页之间不共享。Cookies:在同一域名下的所有窗口和标签页之间共享。

2024-11-28 20:02:00 2426 2

原创 【Spring Security详解】第一章 | 概述

理解Spring Security,让我们从入门、到理解、最终吊打面试官!

2022-09-26 22:24:32 3560 2

原创 synchronized的偏斜锁,轻量级锁,重量级锁

synchronized的偏斜锁,轻量级锁,重量级锁synchronized重在哪里?JDK1.6之后synchronized发生了什么变化?偏斜锁(偏向锁)轻量级锁重量级锁参考有关synchronized锁升级的理念,很多博客讲的很明白,在这里我将我个人的理解讲述一下,方便各位的理解,如果有描述的不正确的地方还请多多指正,不胜感激。synchronized 是 Java 内建的同步机制,所以也有人称其为 Intrinsic Locking,它提供了互斥的语义和可见性,当一个线程已经获取当前锁时,其

2021-03-17 21:46:17 360

原创 如何使主线程等待子线程?

如何使主线程等待子线程使用awaitTermination方法当我们想使用多线程的方法去执行一些逻辑,并想要获取执行的结果的时候。我们会创建一个线程池,然后使用submit方法提交任务。<T> Future<T> submit(Callable<T> task);如果,接下来想要所有的任务执行完毕后,主线程去继续执行。我一般的做法是executor...

2020-04-18 00:06:56 1143

原创 优快云,久违了。

优快云,久违了很久很久以前众里寻他千百度暮然回首,那人却在灯火阑珊处很久很久以前才发现已经注册优快云4年了,当初是在学校的时候,发现优快云有很多资料,但是下载却需要登录,于是便有了这个账号。记得第一次萌生要写博客的想法是在17年,还是16年的国庆节。那天学校刚刚结束运动会,大家都忙着回家过十一。学校在沈阳,沈阳化工大学,俗称铁西区的北大(狗头保命)。那次十一,我并没有回家。一个...

2020-03-31 22:39:20 355 2

空空如也

空空如也

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

TA关注的人

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