顺风java面试:题目
1. 自我介绍
- 个人背景:学历、专业、毕业时间等。
- 技术栈:熟练掌握的编程语言、框架、工具等。
- 项目经验:简要提及参与的项目及其技术亮点。
- 求职动机:为什么选择这家公司,对岗位的理解和期待。
2. 项目经验
- 项目架构:请描述项目的整体架构,包括前端、后端、数据库、缓存、消息队列等组件的选择和设计思路。
3. 技术八股
- MyBatis映射:
- MyBatis是如何与XML文件之间形成映射的?
- 请解释MyBatis的Mapper接口和XML文件之间的关系。
- MyBatis的动态SQL是如何实现的?
- Redis持久化机制:
- Redis的持久化机制有哪些?(RDB和AOF)
- RDB和AOF的优缺点是什么?
- 如何根据业务场景选择合适的持久化机制?
- MySQL三大日志:
- MySQL的三大日志(binlog、redo log、undo log)分别是什么?
- 它们的作用是什么?在事务处理和数据恢复中分别起到什么作用?
- binlog和redo log的区别是什么?
- MVCC:
- MVCC(多版本并发控制)是什么?
- 它是如何实现的?(通过版本号、undo log等机制)
- MVCC如何解决读写冲突?
4. 手撕代码
-
反转二叉树:只翻转奇数层的节点。
- 需要写出代码并解释思路。
- 涉及的知识点包括二叉树的遍历(前序、中序、后序、层序)、递归和迭代的实现方式、如何判断节点的层级等。
-
下面是我的知识星球,在这个知识星球中我会持续更新各个公司的,程序员校招面试题。
作为一名工作一年的鹅厂全栈工程师和CSDN 10w粉丝的技术博主,对于校招生,职场新人相比资深开发有着更加感同身受,给出的意见更加的符合校招生的需求。