- 博客(13)
- 收藏
- 关注
原创 spring 八股
spring 八股1.IOC的注入方式有哪些?2.BeanFactory与ApplicationContext?3.spring bean的作用域?4.bean的生命周期5.五 种不同方式的自动装配1.IOC的注入方式有哪些?1.set注入2.构造器注入3.静态工厂的方法注入静态工厂顾名思义,就是通过调用静态工厂的方法来获取自己需要的对象,为了让 spring 管理所有对象,我们不能直接通过"工程类.静态方法()"来获取对象,而是依然通过spring 注入的形式获取:4.实例工厂的方法注入
2021-10-27 22:13:34
305
原创 JVM相关
JVM相关1.Java中有个String类,如果我们自己写一个java.lang.String类,会出现问题吗(待解决)1.Java中有个String类,如果我们自己写一个java.lang.String类,会出现问题吗(待解决)
2021-10-19 10:32:50
152
原创 MQ 消息队列
消息队列1.mq的作用1.mq的作用解耦,异步,削峰异步就是MQ的第一个能力。可以将一些非核心流程,如日志,短信,邮件等,通过MQ的方式异步去处理。这样做的好处是缩短主流程的响应时间,提升用户体验。解耦。假设日志不光要插入到数据库里,还要在硬盘中增加文件类型的日志,同时,一些关键日志还要通过邮件的方式发送给指定的人。那么,如果按照原来的逻辑,A可能就需要在原来的代码上做扩展,除了B服务,还要加上日志文件的存储和日志邮件的发送。但是,如果你使用了MQ,那么,A服务是不需要做更改的,它还是将消息放到MQ
2021-10-01 16:58:22
476
原创 操作系统面试
操作系统1.页面调度算法2.进程调度算法1.页面调度算法1.随机调度法:随机淘汰页面;2.先进先出调度算法(FIFO):先进先出调度算法根据页面进入内存的时间先后选择淘汰页面,本算法实现时需要将页面按进入内存的时间先后组成一个队列,每次调度队首页面予以淘汰。它的优点是比较容易实现,能够利用主存储器中页面调度情况的历史信息,但是,它没有反映程序的局部性,因为最先调入主存的页面,很可能也是经常要使用的页面。3.最近最少调度算法LFU(Least Frequently Used Algorithm ):
2021-09-15 15:49:04
313
原创 计算机网络
计算机网络1.ping的详细过程2.traceroute3.TCP流量控制4.TCP拥塞控制1.ping的详细过程作用:用于测试网络连通性的程序。过程:1.源主机创建一个ICMP回送请求数据报;2.将ICMP报文连同目的IP地址,交给网络层封装,将源IP,目的IP,协议字段设置为 1 表示是 ICMP 协议,这些信息封装成一个IP数据包;3.接下来交给数据链路层,为IP数据包加上MAC地址,封装成数据帧;4.第三步可以细分,如果数据链路层发现目的IP是同一个网段,那就查表,找到目的IP对应的
2021-09-14 14:22:36
455
原创 Java基础
1.hashMap底层数据结构JDK1.7及之前:entry数组+双向链表JDK1.8:数组+链表+红黑树hashMap默认数值:数组长度为16,可以在new hashMap的时候指定数组长度,这样会生成一个长度为大于输入参数的最小的2的整数次幂的entry数组;load_factor为3/4;put方法根据key的hash值来决定将<key, value>这个entry放在哪个位置:entry的index = hash(key) & (n - 1),其中n是entr
2021-09-13 14:52:47
298
原创 redis 面试题
redis 面试题1. 介绍一下redis的数据结构1.1 String1.2 List1.3 hash(字典)1.3.1 rehash1.3.2 渐进式rehash4.set5.zSet1. 介绍一下redis的数据结构redis有String、List、Set、Hash、zSet这五种数据结构。1.1 StringString是redis中最基本的一种数据结构,redis中String的底层实现是SDS(simple dynamic string),SDS与普通C语言字符串的区别:SDS的数
2021-09-06 11:39:31
210
原创 算法笔记/模板
算法笔记/模板1、图论1、1最短路1、1、1带负权值的最短路(bellman_ford)1、1、2不带负权值的最短路(Dijkstra)1、图论1、1最短路1、1、1带负权值的最短路(bellman_ford)//t:O(mk)public static void bellman_ford(){ dist = new int[n + 1]; Arrays.fill(dist, max); back = new int[n + 1]; //k表示最多经过k条边的从起点到终点的最短
2021-09-02 13:45:30
244
原创 Redis设计与实现 数据结构与对象
《Redis设计与实现》(一)数据结构与对象1、简单动态字符串(SDS)1、1 总览1、2 SDS数据结构1、3 SDS与C语言字符串的区别1、简单动态字符串(SDS)1、1 总览SDS的作用不止于此,它在redis中也被用作缓冲区,如AOF中的AOF缓冲区,客户端的输入缓冲区。1、2 SDS数据结构示例:1、3 SDS与C语言字符串的区别获取字符串长度的时间复杂度:SDS为O(1),因为SDS的数据结构维护了len变量;C语言字符串(后续称之为C串)为O(N),因为要遍
2021-08-28 16:51:01
441
原创 2021-08-28
设计模式1、观察者模式1、观察者模式当对象间存在一对多关系时,则使用观察者模式(Observer Pattern)。比如,当一个对象被修改时,则会自动通知依赖它的对象。观察者模式属于行为型模式。观察者模式的例子:我们都用B站,如果我们对B站的某个UP主发布的内容感兴趣,则可以关注他。当他有新内容的时候,我们会收到通知。当然我们最后也可以取关。上述过程就是一个典型的观察者模式,即UP主+订阅者 = 观察者模式下面是UP主的代码,主要有关注、取关、通知功能:import java.util.Arr
2021-08-28 14:56:56
104
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人