Spring源码启动过程以及拓展点 容器启动过程 第一步先调用this();构造方法,这时父类构造器会初始化容器的 beanFactory 属性,属性为DefaultListableBeanFactory,带有存储BeanDefinition 和单例 bean 的功能 新建一个注解Bean定义读取器 new AnnotatedBeanDefinitionReader(this); 这个读取器主要是初始化环境变量,以及注册 一些 后端 2025年06月10日 76 点赞 0 评论 19343 浏览
算法与活法 最初听到算法这个词的时候, 头脑中闪现出来的第一印象就是数学, 等到深入了解的时候, 才发现算法之中的奇妙之处。 某些方面来看, 一个人都有自己的人生算法, 这些人生算法也决定了会有什么样的活法。 这一句话也可以反过来看, 有什么样的活法, 背后就是与之匹配的算法。 某个层面上来看, 任何的事物都有一套自己的算法, 也可以说, 你有你的算法, 别人有别人的算法, 当这些算法接近的时候, 大家得到 后端 2025年06月10日 58 点赞 0 评论 12608 浏览
LeetCode练习day7-贪心 * [1. 分配饼干] * [2. 不重叠的区间个数] * [3. 投飞镖刺破气球] * [4. 根据身高和序号重组队列] * [5. 买卖股票最大的收益] * [6. 买卖股票的最大收益 II] * [7. 种植花朵] * [8. 判断是否为子序列] * [9. 修改一个数成为非递减数组] * [10. 子数组最大的和] * [11. 分隔字符串使同种字符出现在一起] 保证每次操作都是局部最 后端 2025年06月09日 47 点赞 0 评论 18082 浏览
图解LeetCode——792. 匹配子序列的单词数(难度:中等) 一、题目 给定字符串 s 和字符串数组 words, 返回 words[i] 中是s的子序列的单词个数 。 字符串的 子序列 是从原始字符串中生成的新字符串,可以从中删去一些字符(可以是none),而不改变其余字符的相对顺序。 例如, “ace” 是 “abcde” 的子序列。 二、示例 2.1> 示例 1: 【输入】 s = "abcde", words = ["a","bb"," 后端 2025年06月09日 67 点赞 0 评论 4851 浏览
代码坏味道:大类 一个类之所以成为大类,一种表现形式是长函数,还有一种表现形式是类里面有特别多的字段和函数,也许,每个函数都不大,但架不住数量众多。这次我们就主要来说一下这种形式的大类。 之所以说大类是一个坏味道,因为一个人理解的东西是有限的,没有人能同时面对所有细节。而人类面对复杂事物给出的解决方案是分而治之。经过分解拆分,人们面对的不再是细节,而是模块,模块的数量显然会比细节数量少,这样人们的理解成本就降低了。 后端 2025年06月09日 136 点赞 0 评论 12302 浏览
17. equals和==的区别 文章参考: # 1、背景介绍 == 比较的是变量(栈)内存中存放的对象的(堆)内存地址,用来判断两个对象的地址是否相同,即是否是指相同一个对象。比较的是真正意义上的指针操作。 equals用来比较的是两个对象的内容是否相等,由于所有的类都是继承自java.lang.Object类的,所以适用于所有 后端 2025年06月09日 136 点赞 0 评论 5197 浏览
Buffer/ByteBuffer/ByteBuf详解 ByteBuffer ByteBuffer是一个抽象类,NIO编程中经常会使用,Netty常用的ByteBuf实际上也是对其的一种封装 Byte即字节,一个8位的二进制 Buffer即缓冲区,所谓缓冲区,其实就是一个临时存储数据的容器(可以理解为一个数组),而且一般可以重用 缓冲区 缓冲区有什么用呐? 减少实际的物理读写次数 缓冲区创建时分配固定内存,这块内存区域可被重用,减少动态分配和 后端 2025年06月09日 119 点赞 0 评论 14311 浏览
实战!使用 阿里 Arthas 工具分析 CPU 飙高 Arthas 是阿里开源的 Java 诊断工具,相比 JDK 内置的诊断工具,要更人性化,并且功能强大,可以实现许多问题的一键定位,而且可以一键反编译查看源码,甚至是直接进行生产代码热修复,实现在一个工具内快速定位和修复问题的一站式服务。 今天,我就带你使用 Arthas 定位一个 CPU 使用高的问题,系统学习下这个工具的使用。 首先,下载并启动 Arthas: curl -O https:// 后端 2025年06月09日 62 点赞 0 评论 7404 浏览
05.最长回文子串 05.最长回文子串 问题引入: 给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。 示例 1: 输入: "babad" 输出: "bab" 注意: "aba" 也是一个有效答案。 示例 2: 输入: "cbbd" 输出: "bb" 1. 方法一:暴力法 思路:列举所有的子串,找到最长的回文串 时间复杂度:O(n^3),两次for循环,判断是否回文还有一 后端 2025年06月09日 159 点赞 0 评论 9371 浏览
SpringBoot之JWT令牌校验 SpringBoot之JWT令牌校验 本文根据黑马b站springboot3+vue3课程 JWT(JSON Web Token)是一种开放标准(RFC 7519),用于在不同实体之间安全地传输信息。它由三个部分组成:头部(Header)、载荷(Payload)和签名(Signature)。 头部(Header):头部通常由两部分组成,标识token的类型和所使用的签名算法,例如: 后端 2025年06月08日 163 点赞 0 评论 13168 浏览