2020最新java面试题(三十三)
二面:
- 项目:画一下你的项目架构图,都有哪些步骤每个步骤都做了什么。
- 数据库数据量比较多,查询比较慢,应该如何优化。(索引和分库分表)
- 数据库的联合索引是什么
- 如何进行索引优化。如何知道sql语句是否使用了索引,以及使用了哪些索引
- 索引应该如何建。(我说区分度大的列和类型小的列,他问如何定义区分度大的列)
- 你知道数据库分库分表有哪些,各自在上面情况下使用
- 在数据库分库分表的时候应该如何划分,(
- 数据库分库分表有哪些好处。
- 数据有哪些事物的隔离级别。
- mapReduce的原理和过程,手写一个MapReduce程序,单词统计的。
- 手写单例模式,线程安全的非线程安全的,
- 线程池的参数有哪些,线程池的拒绝策略知道吗?有哪几种。
- java的内存模型是什么样的
- 一个数据从主存加载到线程缓存分哪些步骤、从缓存写到主存分哪些步骤。
- volatile的内存语义和使用场景
- 知道哪些设计模式、在spring、jdk、jvm或者其他框架中都有哪些地方使用了这些设计模式
- hashMap和hashtable的区别
- hashtable和concurrentHashMap的区别
- concurrentHashMap:jdk1.7如何实现的、jdk1.8如何实现区别在哪里
- 什么情况下对concurrentHashMap是全局加锁的
- spring中bean生命周期是什么样的由谁管理的
- spring MVC的执行流程。
- 为什么使用spring ioc和aop,使用能带来哪些好处,
- linux你常用的命令都有哪些
所有面试题持续更新见这里:
2020java面试题汇总 持续更新中