T · Java
一、算法与数据结构
给定一个文件系统,实现 ls,mkdir,readFromFile, writeFile 函数。
二、Java 基础
1 Spring 框架是什么?原理是什么?
答:不知道。
2 Spring Boot 的启动过程?
提示:在 Spring Boot 的启动过程中,有打印一些日志,这个日志就会显示出它所做的工作。
答:不清楚。
追问:Spring Boot 的源码看过吗?
答:没有。
3 Kafka 是什么?原理是什么?
答:1. 性质:Kafka 是一个消息队列;2. 功能:消息队列的功能有异步、解耦、削峰平谷。
追问:Kafka 怎么做消息的分发 or 推送?
答:发布-订阅模式。
4 用过哪些数据库?
答:MySQL,Redis,S3 数据库。
追问:NoSQL 有没有了解过?业界有哪些主流的 NoSQL?
答:只知道 Redis。MongoDB 不太了解。
5 MySQL 的索引有了解什么?
答:数据结构 B+ 树。
追问:索引为什么使用 B+ 树?
答:1. 非叶子节点不存储数据,IO读写次数少;2. 叶子节点是双向链表,便于范围查询。
追问:脏读、幻读、不可重复读出现的原因和解决方法是什么?
答:【记不得了开始瞎说】
正解:
追问:数据库的优化工作?
答:没有。
三、项目相关
1 技术选型的原因?
答:考虑到效率、安全、业务场景的适配度等问题。
评价
对面试官的打分:8 / 10 【写算法题的时候没有互动-1,问的问题过于宏大-1】
对本人的打分: 4 / 10 【算法题没写出来-2,大部分问题回答不知道或者没有-2,知道的说不清楚-2】
Java 后端面经 文章被收录于专栏
记录 Java 后端面试经验