花了一下午撸了这份残缺的java工程师常识(面试)清单,很负责任的说,把握了这些知识点秒杀所有java面试,迎娶白富美走上人生巅峰是迟早的事。整顿这些知识点的目标是,第一,帮忙本人梳理下咱们须要把握的知识点;第二,发现自己的有余,有针对性查缺补漏

根底
javaSE
多态
接口和抽象类
序列化
汇合
代理(动静代理、动态代理)
反射
设计模式
IO
javaWeb
cookie和session
servet常识
tomcat常识
JVM
java类加载机制
双亲委派模型
罕用的GC算法
罕用垃圾收集器及其原理
JVM内存模型
常见JVM内存剖析工具及分析方法
CUP到了100%怎么排查
JDK1.7和JDK1.8区别
JDK1.8新个性
罕用JVM调优参数
判断对象是否存活算法
援用的四种级别
finalize()办法
碰到过什么样的JVM线上问题,怎么排查的(最喜爱问的)
网络编程
tcp和udp
tcp的三次握手和四次挥手
AIO、BIO和NIO
形容一个申请残缺的执行过程(最常问)
http和https
互联网工具
git
maven
linux
并发专题
JMM内存模型
线程和程序,并行和并发
volatile
指令重排序,原子性,可见性
并发同步解决
synchronized内置锁实现原理
AQS原理
CAS算法乐观锁
atomic原子类
threadLocal类
各种锁(乐观锁、乐观锁、可重入锁、偏心锁、非偏心锁等)
ReentrantLock/ReentrantReadWriteLock/ReentrantWriteLock详解
Condition条件队列、同步队列
JUC并发包
CountDownlatch详解
Semaphore详解
CyclicBarrier详解
阻塞队列(ArrayBlockingQueue、CurrentLinkedQueue、DelayQueue、PriorityBlockingQueue)
ForkJoin框架
线程池详解
HashMap和ConcurrentHashMap详解
ArrayList、LinkedList、CopyOnWriteArrayList详解
Set、CopyOnWriteArraySet详解
分布式专题
Redis缓存
什么是redis?
为什么要用redis?应用redis的益处
怎么用redis
redis五种数据结构以及应用场景
应用redis会有哪些问题?以及怎么解决
redis集群的搭建和原理
redis五种数据结构底层实现是怎么的
RocketMq(RabbitMq、kafka)音讯队列
RocketMq、RabbitMq和kafka三者有什么不同?优缺点以及应用场景
RocketMq是什么?
RocketMq应用场景?
RocketMq音讯发送原理
RocketMq音讯失落怎么办?
RocketMq集群同步机制
RocketMq事务原理
Zookeeper
什么是zookeeper?
为什么要应用zookeeper?(优缺点)
zookeeper应用场景
zookeeper原理
Dubbo
dubbo是什么?
为什么要应用dubbo?
dubbo应用场景
dubbo的rpc调用和http调用的区别,有什么长处
dubbo原理
应用dubbo有没有碰到什么问题?怎么解决?(如:dubbo重试)
dubbo怎么做到高可用
dubbo注册核心的服务发现
dubbo源码剖析
netty
为什么应用netty
外部实现原理
netty我还没用过,前面再总结
mysql分库分表
什么是分库分表
分库分表利用场景
有什么优缺点
分库分表规定(算法),为什么思考设计这样的规定,有没有可代替的其余规定
如何做到从一个单库利用平滑过渡到分库分表的利用
如果做到分库分表的数据,按条件分页查问
框架源码专题
spring源码
spring IOC 容器设计原理
spring的bean的生命周期
spring Context的装载过程源码剖析
FactoryBean和BeanFactory区别
AOP注解编程
AOP源码剖析
spring事务管制与源码剖析
spring拦截器
springMVC源码
MVC设计思维
springMVC原理(申请过程)
springMVC组成的体系结构(映射器、执行器、视图解析器、异样捕获等)
springMVC中的罕用注解
springboot
springboot原理(启动流程)
springboot优缺点,应用它有什么益处
springboot罕用注解
mybatis源码
应用mybatis解决了什么问题?有什么益处
mybatis原理
初始化过程
一条sql语句执行过程
Configuration、Mapper、SqlSession、Excutor源码剖析
mybatis的一级缓存和二级缓存
如果让你手写一套mybatis,你会怎么设计(面试被问过)
数据结构和算法
数据结构
数组
链表
跳跃表
堆栈
队列
各种树
矩阵
算法
罕用排序算法以及工夫、空间复杂度
《剑指offer》
《LeetCode》
常见top K问题
数据库专题
mysql
数据库设计三范式
事务(个性和隔离级别)
MVCC多版本并发管制
事务并发问题
事务日志(binlog、redo log、undo log)
索引数据结构类型
索引分类(聚簇索引和非聚簇索引)
mysam和InnoDb区别
架构原理(一条SQL的执行过程)
SQL调优
mysql高可用(MMM、MHA、PXC)
ElasticSearch
es集群原理
一条查问申请的残缺过程
es的优缺点
es利用场景
滚动查问
es的倒排索引原理
怎么保障es和mysql的数据一致性
MongoDB
mongoDB的个性
mongoDB的应用场景
mongoDB的优缺点
应用过程中有没有碰到什么问题
我的项目
罕用我的项目的设计
登录注册
单点登录
短链接
形容本人我的项目
你在这个我的项目中参加了哪些局部?
你是怎么设计的?
为什么这么设计?
有没有其余计划代替?
用到了什么技术?为什么要用这个技术?有没有可代替的?
开发过程中有没有碰到什么(没思考到的)难点?你是怎么解决的
还能不能优化?
你有什么播种?
让你来做跟他人来做,你的劣势在哪?(这个有点扯淡,然而有些面试官还是会问)
最初
有些人花了三五年就能把握这些知识点,胜利面上高薪架构师,

有些人花了十多年却只晓得些皮毛,每天做着CRUD的工作。

能够说这一篇(宝典),熟知本文80%以上内容,找个开发工作问题不大。对3-5年教训的敌人, 也是疾速复习的利器!本次的内容大抵的就介绍到这里啦,因为内容太多,只能简略介绍到这里,如有须要以上内容的完整版,大家能够私信我获取哦~~后盾关注我后私信回复:【666】即可获取

如果本文对你有帮忙,别忘记给我个3连 ,点赞,转发,评论,

咱们下期见!答案获取形式:已赞 已评 已关~