面经准备

算法

1,最长回文子串
https://www.cnblogs.com/mini-coconut/p/9074315.html
2,爬楼梯问题
https://blog.csdn.net/rocling/article/details/81193431

数据结构

1,红黑树
http://www.360doc.com/content/18/0904/19/25944647_783893127.shtml
https://www.jianshu.com/p/6f6642b982af
https://github.com/julycoding/The-Art-Of-Programming-By-July/blob/master/ebook/zh/03.01.md

2,hashmap底层实现
1.8之前是链表+entrySet,1.8之后使用链表+红黑树

3,hashmap的扩容机制
https://www.cnblogs.com/yanzige/p/8392142.html

4,一致性哈希
https://www.cnblogs.com/study-everyday/p/8629100.html
https://www.jianshu.com/p/e968c081f563

5,布隆过滤器
https://segmentfault.com/a/1190000015482091
https://my.oschina.net/LucasZhu/blog/1813110
https://www.jianshu.com/p/2104d11ee0a2

6,跳表
https://www.jianshu.com/p/dd01e8dc4d1f
https://blog.csdn.net/pcwl1206/article/details/83512600

网络

1,三次握手和四次挥手
https://blog.csdn.net/qq_38950316/article/details/81087809

2,TCP和UDP的区别
https://www.cnblogs.com/williamjie/p/9390164.html
面向报文与面向字节
https://blog.csdn.net/ce123_zhouwei/article/details/8976006

3,TCP如何保证可靠传输
https://blog.csdn.net/liuchenxia8/article/details/80428157

4,TCP如何进行流量控制

5,TCP如何进行拥塞控制
https://blog.csdn.net/m0_37962600/article/details/79993310

6,HTTP状态码
https://www.cnblogs.com/xflonga/p/9368993.html

7,漏桶算法

8,HTTP POST和GET
https://www.cnblogs.com/liziweiblog/p/11066333.html
https://blog.csdn.net/bieleyang/article/details/76272699
https://baijiahao.baidu.com/s?id=1626599028653203490&wfr=spider&for=pc

9,
InetAddress IP协议
URL URL
URLConnection
HTTPURLConnection
Socket/ServerSocket
https://www.cnblogs.com/kuangzhisen/p/7053689.html

UrlConnection连接和Socket连接的区别
https://blog.csdn.net/iteye_1429/article/details/82168974
https://blog.csdn.net/bibi1314123/article/details/17090927

10,三次握手中ack的值是什么?SYN攻击与防护
https://www.cnblogs.com/huskiesir/p/10212053.html
https://baijiahao.baidu.com/s?id=1627339324399698792&wfr=spider&for=pc

11,tcp的time wait 和 close wait
12,长连接及心跳连接
https://www.jianshu.com/p/16c8c9e09feb

数据库/MySql

1,Mysql的事务隔离级别
https://www.cnblogs.com/rxbook/p/8975924.html
设置mysql的事务隔离级别
https://www.cnblogs.com/huasky/p/11190086.html
https://www.cnblogs.com/satng/p/7759899.html

2,数据库的连接池
https://blog.csdn.net/qq_39659876/article/details/80958450
https://blog.csdn.net/qq_34468186/article/details/83892496
https://baijiahao.baidu.com/s?id=1599699339020031595&wfr=spider&for=pc

3,乐观锁悲观锁
https://www.cnblogs.com/suger43894/p/11024102.html

4,数据库分页优化
https://www.cnblogs.com/geningchao/p/6649907.html
https://www.cnblogs.com/RunForLove/p/5100009.html
https://www.cnblogs.com/waterystone/p/9392421.html

5,mysql数据引擎知道几种?innodb和mylsam区别
6种,InnoDB,MyISAM,NDB,Memory,Archive,Federated,Maria
https://www.cnblogs.com/zhangchaoyang/articles/4214237.html

6,索引失效

  • 复合索引不能跨列或者无序使用;尽量使用全索引匹配
  • 不要在索引上进行任何操作(计算,函数,类型转换)
  • 复合索引不能使用不等于或is null,否则自身及右侧全部失效
  • 复合索引中有>,<,in,之后的索引失效
  • like尽量用常量开头,不以“%”开头;如果必须以“%”开头,可以用索引覆盖挽救一部分
  • 尽量不要用or,否则or左侧的索引也失效

7,覆盖索引
https://blog.csdn.net/qq_15037231/article/details/87891683
https://www.cnblogs.com/happyflyingpig/p/7662881.html
https://www.cnblogs.com/pyng/p/9599977.html

8,倒排序索引
https://www.cnblogs.com/gered/p/9561710.html
https://www.cnblogs.com/luminous1/p/8383777.html
https://blog.csdn.net/zsd_31/article/details/79979818

9,MVCC
https://blog.csdn.net/rocling/article/details/81193431
https://www.cnblogs.com/liulvzhong/articles/9242299.html

redis

1,Redis数据结构及持久化机制
https://www.cnblogs.com/neooelric/p/9621736.html
2,Redis持久化机制
https://www.cnblogs.com/yyjie/p/7487937.html

MyBatis

1, mybatis 如何获取自增ID
https://blog.csdn.net/zonghao123/article/details/78374169
2, mybatis 一二级缓存

JavaSE

1,根据反射加载一个类的具体步骤
https://www.cnblogs.com/xiaobiqiang/p/6047146.html
https://www.cnblogs.com/FanJava/p/9512775.html

2,泛型
https://www.cnblogs.com/coprince/p/8603492.html

3,面向对象
4,HashMap为什么初始化为16
https://blog.csdn.net/l18848956739/article/details/85998121

5,hashCode 怎么对应桶的位置
https://blog.csdn.net/yue31313/article/details/77513353

6,hashCode的计算
https://blog.csdn.net/tanggao1314/article/details/51457585
https://blog.csdn.net/zhucegemingzizheng/article/details/81289479

7,字符串快速去重

8,Error和Exception的区别
https://www.cnblogs.com/lcl-dcr/p/7653274.html
https://www.cnblogs.com/hustzzl/p/7840780.html

9,聊一下java里的对象(java里的包)

10,HashMap底层转红黑树的时机
https://www.cnblogs.com/laipimei/p/11282055.html
https://www.cnblogs.com/laipimei/p/11275235.html
11,io类型;nio是其中哪一种
https://blog.csdn.net/datadev_sh/article/details/79241186
https://blog.csdn.net/Yufail/article/details/88825123

JavaEE

1,Session和Cookie的区别
https://www.cnblogs.com/zlw-xf/p/8001383.html
https://www.cnblogs.com/roxy/p/7805858.html

2,Servlet的生命周期

设计模式

1,单例模式的好处,应用
https://www.cnblogs.com/restartyang/articles/7770856.html
2,工厂模式
https://blog.csdn.net/weixin_41843053/article/details/80853758
https://www.jianshu.com/p/ae2e22aa6147
3,Java单例的饱汉与饿汉模式
https://blog.csdn.net/sai739295732/article/details/62411016
https://blog.csdn.net/qq_37768482/article/details/77539850

JVM

1,JVM中的gc,Full GC
https://baijiahao.baidu.com/s?id=1632743030610982339&wfr=spider&for=pc
https://blog.csdn.net/hellozhxy/article/details/80649342
https://blog.csdn.net/weixin_39788856/article/details/80388002
https://www.cnblogs.com/jenkov/p/full_gc_old_gc_cms_gc.html
https://www.cnblogs.com/williamjie/p/9516264.html
2,垃圾回收及算法
垃圾回收算法:

  • 标记-清除
  • 标记-复制
  • 标记-整理
  • 分代回收

垃圾收集器
年轻代
Serial:单线程
ParNew:多线程
Parallel Scavenge:使用复制算法,强调精确控制吞吐量
老年代
Serial Old:单线程,Serial 的老年代版本
Parallel Old:Parallel Scavenge 使用多线程和”标记-整理“算法 吞吐量优先
CMS:”标记-清除“算法,强调最短回收停顿时间
兼顾年轻代和老年代:
G1收集器:并行与并发,分代回收,"标记-整理"算法,可预测的停顿

3,假设有一个加法类从编译到最终使用的整个过程

4,如何判断对象是否需要被回收?两个相互引用的对象如何被回收

  • 引用计数
  • 可达性分析

附:GCRoot的对象包括:

  • 虚拟机栈中引用的对象
  • 方法区中类静态属性引用的对象
  • 方法区中常量引用的对象
  • 本地方法栈中JNI引用的对象

5,虚拟机栈异常类型以及复现代码
6,堆内存异常类型以及复现
7,直接内存怎么使用以及jvm对其管理

多线程

https://www.jianshu.com/p/125ccf0046f3

1,线程池的参数
public ThreadPoolExecutor(
int corePoolSize,
int maximumPoolSize,
long keepAliveTime,
TimeUnit unit,
ThreadFactory threadFactory,
RejectedExecutionHandler handler
);

2,为什么要使用线程池
https://blog.csdn.net/a497393102/article/details/8597819
https://blog.csdn.net/Muz_victory/article/details/81216771

3,如何合理的配置线程池
CPU密集型 Ncpu+1
IO密集型 2*Ncpu

混合型任务 进行任务拆分
4,饱和策略/任务队列满了以后再来一个任务如何处理

5,JUC包里的东西,有哪些常用锁
https://www.cnblogs.com/doit8791/p/9131148.html
Lock,AQS,ReentrantLock,ReadWriteLock,LockSupport,Condition

6,线程同步的几种方法?
https://www.cnblogs.com/baizhanshi/p/7025974.html

7,线程同步使用哪些锁?
https://www.cnblogs.com/lixiangyang521/p/6861768.html

8,死锁和死循环都会导致程序hold住,怎么判断是死锁还是死循环
https://blog.csdn.net/wanglha/article/details/51133819

9,并发容器种类
https://www.cnblogs.com/ygj0930/p/6543877.html
https://blog.csdn.net/cdefggg/article/details/86426917
https://www.jianshu.com/p/7f50497b7f30

10,concurrenthashmap数据结构

11,线程状态(blocked waiting timed_waiting)
https://www.cnblogs.com/cowboys/p/9315331.html

12,等待和阻塞的区别
https://blog.csdn.net/woshiyigeliangliang/article/details/81116872

13,wait和sleep的区别
https://blog.csdn.net/kangkanglou/article/details/82221301

14,volatile变量i++
https://www.cnblogs.com/zemliu/p/3298685.html

spring

1,spring的主要特点?介绍一下AOP和IOC;AOP的实现方式;IOC的实现方式
AOP和IOC;AOP是面向切面编程;IOC是控制反转;spring AOC的实现是 jdk动态代理和cglib代理;
AOP的实现
https://blog.csdn.net/wyl6019/article/details/80136000
IOC的实现
https://www.cnblogs.com/neon/p/10929759.html
https://www.cnblogs.com/study-everyday/p/8566532.html

https://www.jianshu.com/p/4b31dacf3a63

附:常见的四种代理方式
https://blog.csdn.net/luanlouis/article/details/24589193
cglib和jdk动态代理的比较
https://blog.csdn.net/liangwenmail/article/details/78457106

2,spring中如何配置事务管理级别
https://www.cnblogs.com/cxyj/p/3906402.html

3,springMVC的处理流程
https://www.cnblogs.com/5ishare/p/8683971.html

4,一个Controller中会涉及到哪些注解
@Controller
@Autowire
@RequestMapping
@RequestParam
@RequestBody
@ResponseBody
@ModelAttribute

5,Spring和Spring boot的区别
https://www.jianshu.com/p/ffe5ebe17c3a
https://blog.csdn.net/wang_666_/article/details/80527113
https://www.codercto.com/a/27048.html

6,@transaction

分布式

1,分布式锁的实现
https://blog.csdn.net/qq_32924343/article/details/79814133
附:
CAP原理
http://www.ruanyifeng.com/blog/2018/07/cap.html
2,了解微服务吗?

操作系统 Linux

1,Linux Cpu的轮询方式

2,Linux中查询当前系统有多少个进程的指令

3,Linux的五种io模式,javaNIO
https://blog.csdn.net/datadev_sh/article/details/79241186
https://blog.csdn.net/Yufail/article/details/88825123
4,Linux 的swap分区
https://www.cnblogs.com/saneri/p/10319412.html

绪论

4,内核态与用户态,特权指令
内核态:又称管态,是操作系统管理程序执行时机器所处的状态。它具有较高的特权,能够执行包括特权指令的一切指令,能够访问所有的寄存器和存储区
用户态:又称目态,是用户程序执行时机器所处的状态。它具有较低的特权,只能执行规定的指令,只能访问指定的寄存器和存储区
特权指令:只能由操作系统内核使用的,不允许用户程序使用的指令,如IO指令,设置中断屏蔽指令,清内存指令,存储保护指令和设置时钟指令

5,中断与异常
https://blog.csdn.net/u014134180/article/details/78418428
什么是中断
https://www.cnblogs.com/jacklong-yin/p/11263052.html

6,系统调用
操作系统提供给用户程序请求内核完成某种功能的一种过程调用
https://blog.csdn.net/xiaomimi1993/article/details/81710623

进程管理

7,进程的组成

  • 进程控制块(PCB)
  • 程序段
  • 数据段

8,进程的状态与转换
https://blog.csdn.net/qwe6112071/article/details/70473905

9,内核级线程与用户级线程
https://www.cnblogs.com/feng9exe/p/7890934.html

10,常见的调度算法
a,先来先服务
b,短作业优先
c,优先级调度
d,时间片轮转
e,高相应比调度
f,多级队列调度
g,多级反馈队列调度

11,互斥的要求

  • 空闲让进
  • 忙则等待
  • 有限等待
  • 让权等待

12,互斥的实现
信号量机制;PV原子操作

13,经典同步问题
a,生产者消费问题
b,读者-写者问题
c,哲学家进餐问题
d,理发师问题

14,管程

15,死锁产生的原因和必要条件
原因:竞争资源;系统资源不足和进程推进顺序不当
必要条件:

  • 互斥条件
  • 不剥夺条件
  • 请求与保持条件
  • 环路等待条件

16,死锁的预防
https://www.cnblogs.com/bopo/p/9228834.html
17,死锁代码demo
https://blog.csdn.net/wanglha/article/details/51133819

内存管理

1,交换与覆盖
2,存储管理方式
连续管理方式
非连续管理方式
3,MMU和快表
MMU
https://www.cnblogs.com/alantu2018/p/9002309.html
快表TLB
https://blog.csdn.net/weixin_36725931/article/details/85344814
TLB和MMU的区别
https://www.cnblogs.com/linhaostudy/p/7771437.html
4,虚拟内存
https://www.cnblogs.com/kexinxin/p/9939085.html
5,缺页中断与普通中断的区别
a,在指令的执行期间产生和处理中断
b,一条指令可以产生多个缺页中断

6,页面置换算法
a,OPT最佳置换算法
b,FIFO先进先出
c,LRU最近最少使用
d,CLOCK时钟置换算法
5,改进时钟算法

文件管理

1,软链接和硬链接
https://www.cnblogs.com/rswss/p/9466882.html

2,

设备管理

1,IO控制方式

  • 程序直接控制方式
  • 中断控制方式
  • DMA控制方式
  • 通道控制方式
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,921评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,635评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,393评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,836评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,833评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,685评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,043评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,694评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,671评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,670评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,779评论 1 332
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,424评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,027评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,984评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,214评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,108评论 2 351
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,517评论 2 343

推荐阅读更多精彩内容

  • 1-------- 走进前端 2-------- jQuery 3-------- CSS 4-------- A...
    依依玖玥阅读 2,316评论 0 34
  • 本系列出于AWeiLoveAndroid的分享,在此感谢,再结合自身经验查漏补缺,完善答案。以成系统。 Java基...
    济公大将阅读 1,523评论 1 6
  • 网站: http://ui4app.com/category 技术网站: http://www.bestsdk.c...
    LYPC_下里巴人阅读 979评论 0 1
  • 刚刚在看中国式关系,奇怪的是我看了这么久,从下午到晚上,现在却只记得三个人的名字,主人公叫什么已经忘记了,只记得姓...
    噗嗒阅读 476评论 0 0
  • 今天其实过的很疲劳,感觉自己被掏空了,早晨起来就是紧张兮兮的,媛崽崽感冒第三天了,比前两天状态稍微好一些,但是还是...
    清晏先生阅读 185评论 0 0