五年经验要多了解原理,是必备的面试知识!
mysql
3.SQL 慢查询优化步骤?
8.B+tree和Btree的区别?
29.MySQL数据默认事务隔离级别是什么?
30.数据库隔离级别有几种?
35.MySQL的ACID有哪些特性?
36.MySQL默认隔离级别是什么?
37.讲一下MySQL最左比例选择?
38.MySQL,innodb的索引底层用的是什么?
39.讲一下B+Tree?
18.组合索引和单个索引的区别?
34.讲一下MySQL的ACID?
7.MySQL和Oracle的索引是怎么实现的?
多线程
47.了解多线程的锁synchronize和lock?
22.java线程池如何创建?
23.java创建线程池有几个参数?
43.如何应用带返回值的线程?
44.Callable接口了解吗?
45.讲一下Countdownlatch?
6.项目中如何用多线程?
集合框架
12.项目组用到什么集合?
14.ArrayList和Linkedlist的区别?
13.map的初始容量?
19.hashmap底层如何实现?
21.java如何实现链表?
JVM
2.jvm内存模型分哪几个区?
10.jvm内存分配?用什么版本的jvm?
11.堆和栈分别放什么东西?
42.讲一下jmm内存模型?
算法
28.什么是双向链表?
20.什么是链表?
31.冒泡排序如何实现?
33.两个for循环,冒泡排序的时间复杂度?
spring
1.spring boot启动过程?
27.spring aop如何实现?
46.IOC容器和DI注入?
通信协议
16.什么是TCP?
24.http三次握手四次挥手?
25.http和https的区别?
26.https如何实现加密?
缓存中间件
4.redis数据类型有哪些?
5.set和zset的区别?如何实现有序?
设计模式
32.项目中用到了什么设计模式?
mybatis
40.mybatis是如何防止sql注入的?
41.mybatis,dao如何映射到mapper.xml文件?
其他
9.介绍项目,负责什么工作?
15.线上故障如何解决?
17.nginx upstream有什么作用?
微服务
48.了解ci,cd吗?