java知识链条

java基础

HashMap 结构 、put过程、jdk7、8的区别、线程安全性,rehash

如何解决哈希冲突,列举解决方法

CurrentHashMap原理,jdk7、8区别

LinkedList与ArrayList区别

Stream流式写法,管道没有关闭语句结尾时前面的语句不会执行,如集合后面一堆filter后没有collect结尾则语句都不会执行,相当于没有关键结尾相当于一顿操作猛如虎却没打开水龙头。

☆☆

线程6种状态

线程创建、中断方式

Future接口

ThreadLocal

☆☆☆

jdk4种线程池,名称

ThreadPoolExecutor构造参数以及解释任务执行原理

线程池所用队列种类,意义

7种阻塞队列,典型的ArrayBlockingQueue与LinkedBlockingQueue区别

TreeMap排序原理

☆☆☆☆

Synchronized底层原理,锁升级,解释到jvm级别

Volatile作用,原理

ReenTrantLock原理解释,说清AQS框架,公平性与非公平的原理

CAS思想,Atomic系列举例说明,解决ABA问题(AtomicStampedReference)

单例创建使用双检锁原理

☆☆☆☆☆

java快速写出典型5种排序(冒泡、快排、插入、选择、归并),并回答复杂度

Collections.sort以及Arrays.sort所用的算法(TimSort)

IO与NIO,解决文件同时读写问题

数据库

☆☆

Mysql事务隔离级别,默认哪一种

Mysql行级锁与表锁 区别,出现场景

mysql索引类型(普通索引、唯一性索引、主键索引、组合索引)

库存字段如何解决并发问题如何解决?乐观锁与悲观锁的使用方式?(for update,版本号)

查看SQL执行计划,上线前排查性能问题?explain…

☆☆☆

SQL优化典型几种做法

能使用索引的几种sql写法以及错误写法,最左前缀匹配场景

count 如何最快(count(*)),那种select最快,主键索引与唯一性索引引发的性能区别

☆☆☆☆☆

Mysql每种索引使用的底层算法,原理

Mysql集群方式

主从同步原理(binlog), 如何解决延迟

Redis

5种数据类型(必须回答完整,懂行的还有HyperLogLog),解释每种类型底层数据结构,算法

6种数据淘汰策略

持久化方式有哪几种?AOF与RDB,区别有什么

☆☆

每种数据类型基本的典型操作命令要知道

平时Redis使用场景

redis分布式锁实现方式

redis事务

☆☆☆

Redis集群方式以及使用场景,通信协议,使用缺点说一下。主从、哨兵、分片。

框架

Spring IOC AOP ,要回答出依赖倒转优势,aop使用方式,代理框架(jdk 、cglib)

MyBatis #与$符号的区别

MyBatis的2级缓存方式

BeanFactory与ApplicationContext的区别

BeanDefinition的作用

☆☆

Spring jdbc事务原理,7种传播策略以及其原理。事务要先说声明式与编程式,否则会挂。

SpringBoot的启动过程,相对与SpringMVC的优势

Spring Cloud相对与boot的优点以及区别,各大组件要罗列出来

☆☆☆☆

服务注册中心以及网关使用原理说出一二,解决哪些问题,

☆☆☆☆☆

网关的原理,如zuul

netty线程池种类列举

java 自己实现一个 LRU。

SPI机制解释

说说你平时用到的设计模式,spring哪些地方使用了设计模式

消息队列

MQ 系统的数据如何保证不丢失。

3种队列的区别,列举

如何保证唯一性,

解决消费失败问题

操作系统

进程与线程的区别

☆☆

内存屏障

CyclicBarrier与CountDownLatch区别、使用场景、主要方法

☆☆☆

linux网络命令,常见命令less、more、grep、awk

文件权限的修改命令

jvm垃圾收集器介绍一下

出现内存溢出如何排错

介绍jvm内存模型,主内存与工作内存

业务场景问答

☆☆

缓存雪崩、击穿、穿透回答原因,解决方式

消息队列的作用,解决哪种问题

☆☆☆☆

高并发场景解决超卖问题,结合Redis锁、缓存、mysql回答

生成唯一性id

并发任务提升效率方式, 加量有多个机器并发执行,加速有线程池、NIO方式。

数据库与缓存redis之间的缓存一致性如何解决

哈希一致性的解决办法

延迟队列的实现方式

☆☆☆☆☆

支付宝如何验证请求,支付流程是怎样的

分布式事务的解决办法,各种办法的缺点

SQL + 索引

mysql最左前缀:联合索引时,左边第一列要在where条件中;like右模糊下索引才生效

group by count(*) 统计每组数量不能与where联合使用,应使用having

select count(age) having count(age) > 1 group by age

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值