avatar
文章
153
标签
27
分类
31
首页
时间轴
标签
分类
友链
关于
Alfred的小站spring家族
首页
时间轴
标签
分类
友链
关于

spring家族

发表于2021-04-11|更新于2025-03-01|Spring
|浏览量:

Spring 家族

Spring常见问题总结

Spring主要模块 img
文章作者: Alfred
文章链接: http://alfredty.com/2021/04/11/Spring/1-spring%E5%AE%B6%E6%97%8F/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Alfred的小站!
技术八股
cover of previous post
上一篇
有序集合zset_跳表
redis有序集合zset的底层实现——跳跃表skiplist原理 上图用a,b,c,d,e五种有序链表及其变式(变式的名字是我随便起的)说明了跳跃表的motivation. [a]单链表:查询时间复杂度O(n)[b]level-2单链表:每隔一个节点为一个level-2节点,每个level-2节点有2个后继指针,分别指向单链表中的下一个节点和下一个level-2节点。查询时间复杂度为O(n/2)[c]level-3单链表:每隔一个节点为一个level-2节点,每隔4个节点为一个level-3节点,查询时间复杂度O(n/4)[d]指数式单链表:每2^i个节点的level为i+1,查询时间复杂度为O(log2N)[e]跳跃表:各个level的节点个数同指数式单链表,但出现的位置随机,查询复杂度仍然是O(log2N)吗 当数据较少时,sorted set是由一个ziplist来实现的。 当数据多的时候,sorted set是由一个dict +...
cover of next post
下一篇
SpringIOC
IOCIOC原理IOC(Inversion of Control):控制反转 Spring Core最核心的部分 需要先了解依赖注入(Dependency Inversion) 依赖注入含义把底层类作为参数传递给上层类,实现上层对下层的“控制” 使用依赖注入的代码实例 需要修改轮胎时只用改一下轮胎就行了,不再需要大动干戈 IOC、DI、DL的关系DL(Dependency Lookup):依赖查找(已经被抛弃,需要用户自己使用API查找对象) 依赖注入的方式 Setter 实现特定属性的pulic...
相关推荐
cover
2021-08-16
jvm如何加载.class文件
jvm如何加载.class文件JVM是一个内存中的虚拟机 Class Loader:根据特定格式,加载class文件到内存 Execution Engine:解释器,对命令进行解析 Native Interface:融合不同语言的原生库为java所用 Runtime Data Area:JVM内存空间结构模型 由Class Loader加载.class文件到内存,Execution Engine进行解析运行,如果有native方法交给Native interface执行
cover
2021-04-11
反射
反射Java反射机制是在运行状态中, 对于任何一个类,都能够知道这个类的所有属性和方法; 对于任何一个对象,都能够任意调用他的方法和属性; 这种动态获取信息和动态调用对象方法的功能就叫做反射机制。
cover
2021-04-11
内存模型
内存模型 Runtime Data Aera Method Area:是Java虚拟机规范中的概念,在HotSpot的实现中: JDK7及以前,HotSpot用永久带来实现方法区,存在jvm内存中,与堆连续的地址空间,GC和老年代一起。 JDK8及以后,HotSpot把很多东西放到了堆或者本地内存,而方法区则成为了元空间的实现,同时元空间不再与堆连续,而且是存在于本地内存(Native memory)。 JVM内存模型 线程私有:程序计数器,虚拟机栈,本地方法栈 线程共享:MetaSpace、Java堆 程序计数器(Program Counter Register) 是一块较小的内存空间,可以看做是当前线程所执行的字节码行号的指示器; 字节码解释器工作时,通过改变计数器的值选取下一条执行的字节码指令;(一些基本功能都需要依赖计数器来完成 如 分支 循环 跳转 异常处理 线程恢复...
cover
2021-04-11
常考题型
JVM三大性能调优参数 -Xms -Xmx...
cover
2021-04-11
GC
GC 垃圾回收机制判断对象是否为垃圾的算法引用计数算法 通过判断对象的引用数量来决定对象是否可回收 每个对象实例都有一个引用计数器,被引用则+1,完成引用则-1 优点:执行效率高,程序执行受影响较小 缺点:无法监测出循环引用的情况,导致内存泄露 由于其缺点的存在,主流JVM基本不使用此方式。 可达性分析算法 通过判断对象的引用链是否可达来就决定对象是否可以被回收 对内存中的整个对象图进行遍历,从GC Root开始,回收器将所有访问到的对象标记为存活,完成遍历后不可达的对象会被作为垃圾对象而清除。 可以作为GC Root的对象 虚拟机栈中引用的对象(栈帧中的本地变量表) 方法区中的常量引用的对象 方法区中的类静态属性引用的对象 本地方法栈中JNI(Native方法)的引用对象 活跃线程的引用对象 垃圾回收算法标记-清除算法(Mark and...
cover
2021-04-11
ClassLoader
ClassLoader类从编译到执行的过程 编译器将源文件转化为字节码文件 ClassLoader将字节码转化为JVM中的Class<T>对象 JVM利用Class<T>对象实例化为T对象 ClassLoaderClassLoader在java中有着非常重要的作用,它主要工作在class装载的加载阶段,其主要作用是从外部系统获得class二进制数据流,它是java的核心组件,所有的class都是由ClassLoader进行加载的,ClassLoader负责通过将class文件里的二进制数据流装进系统,然后交给java虚拟机进行连接、初始化等操作。 ClassLoader的种类 BootStrapClassLoader:C++...
avatar
Alfred
文章
153
标签
27
分类
31
Follow Me
公告
This is my Blog
目录
  1. 1. Spring 家族
最新文章
红烧牛肉
红烧牛肉2024-05-04
MyHomeLab:8-在公网服务器中搭建nginx反向代理
MyHomeLab:8-在公网服务器中搭建nginx反向代理2024-04-29
2024春播-开花&换盆
2024春播-开花&换盆2024-04-29
2024春播-绣球开花
2024春播-绣球开花2024-04-24
2024春播-初见花色
2024春播-初见花色2024-04-15
©2020 - 2025 By Alfred
框架 Hexo 7.3.0|主题 Butterfly 5.3.3