1.是否了解集合,讲一下集合
2.是否使用过多线程,如何创建多线程
3.你说到了线程池,讲一下线程池有多少参数,它们什么意义
4.你说到了核心线程池的核心线程数,讲一下如果来了一个新线程,它会怎么处理(其实就是问你工作队列)
5.讲一下JVM的内存模型,GC的主要区域(方法区和堆)
6.Mysql8和Mysql5的区别
7.Mysql存储引擎Innodb和MyIsam的区别
追问:count *与count 1的区别:
count(1)和count(*)之间没有区别,因为count(*)count(1)都不会去过滤空值,
从执行效率来说:
他们之间根据不同情况会有些许区别,MySQL会对count(*)做优化。
(1)如果列为主键,count(列名)效率优于count(1)
(2)如果列不为主键,count(1)效率优于count(列名)
(3)如果表中存在主键,count(主键列名)效率最优
(4)如果表中只有一列,则count(*)效率最优
(5)如果表有多列,且不存在主键,则count(1)效率优于count(*)
count(*)(是针对全表)将返回表格中所有存在的行的总数包括值为null的行;
count(列名)(是针对某一列)将返回表格中某一列除去null以外的所有行的总数。
引申:
distinct 列名,得到的结果将是除去值为null和重复数据后的结果
8.Mysql隔离级别,默认隔离级别
9.Mysql你了解的粒度最细的锁(我说了页锁,他问了临键锁)
10.开始问项目:三级分类页面拖拽怎么实现的。商品上架怎么实现的(我说了es)他问怎么使用es的(自定义索引存储商品数据)
11.异步了解吗,异步ajax执行for循环会出现什么问题
12.多级评论数据库怎么设计 多级评论的实现思路-爱码网
13.前端es6和es5语法的区别等等。(我说我没怎么系统学习过 就没问前端了)
14.SpringBoot的约定大于配置怎么理解
15.Spring IOC你的理解
16.Spring依赖注入的方式
17.Redis的五大数据类型(String、Set、Hash、List、Zset)还有三个新的没问
18.你主要使用Redis的场景(我说了缓存主页展示的热点数据)
19.追问:那你数据库和Redis怎么做到数据同步一致性(我说不知道 我不同步)