菜鸟Java实习一面(生死未卜)
- 自我介绍
- 简单聊了一下项目
- Spring Bean 的作用域
- 谈谈 Spring IOC 的理解
- Spring 如何获取 Bean 对象
- Mybatis 通过一个接口就可以关联到一个 XML 中的 SQL 语句(这个不会了)
- 谈谈对 AOP 的理解
- 那说一下 Spring AOP 是怎么实现的(我开始扯 JDK,Cglib 的具体方法,然后被叫停了)
- 线程池用过吗?说一下线程池的 7 个参数
- 什么时候开始创建非核心线程,比如配置核心线程 5 个,最大线程 10 个,什么时候开始创建第 6 个线程
- MySQL 有哪些存储引擎
- InnoDB 和 MyISAM 有哪些区别
- 为什么 MyISAM 查询更快?(这个感觉答得不对)
- InnoDB 的索引结构
- B 树和 B+ 树的区别
- MySQL 有哪些锁
这里本来卡壳了,正好面试官有个电话进来了,让我整理了一下思路。说到了共享排他锁,行锁表锁页锁。
- MySQL 插入一条记录是加什么锁(这个有点卡壳了)
- 索引最左匹配原则是什么
- 假设有 (c1,c2,c3) 的联合索引,MySQL 内部是怎么创建索引来满足最左匹配原则
索引这边回答的有点乱。
- SQL 优化性能优化了解吗(直接说不了解)
- Netty 的网络 IO 模型
- 多路复用 IO 模型底层是怎么实现的
这个只能回答到使用了 epoll、select 等操作系统的功能的层面了
- 阻塞和非阻塞的区别是什么
- 说一下从浏览器打开淘宝的整个流程,不要讲的太细,大概说一下就行
- 你能讲讲你项目中哪些场景用到了什么设计模式,不要空讲原理
这个直接崩了,我先说了生成器模式(早知道先讲单例模式了)。
面试官说:这个不能算,比如模板,策略这些都是比较实用的,你有用过吗?
我说了一下策略模式,本来想说一下模板方法在 AQS 中应用,然后一想,AQS 我不太熟,放弃了。 - Redis 有哪些数据结构,底层是什么数据结构,都有什么应用场景
- 开始扯研究生课题(太紧张了,自己的研究方向都说的有点乱)
- 明年毕业吗
- 对工作地有什么要求吗,什么岗位(面试官在敲电脑,应该在记录信息)