- 0
- 0
- 约6.6千字
- 约 7页
- 2026-10-19 发布于河北
- 举报
北京BAT后端真实面试题及详细答案(无模板化、真实面试向)
说明:题目均为北京百度、阿里、字节现场/线面高频真题,覆盖Java基础、数据库、计算机网络、框架原理、算法、场景实战、项目深挖,答案贴合面试官考察重点,口语化、实战化,无套话,适配校招、社招初/中级后端岗位。
一、百度高频面试题(含一二面)
1.MyBatis和Hibernate的核心区别,项目中为什么选MyBatis?
详细答案:两者都是持久层框架,核心差异在灵活性、自动化程度和适配场景。
Hibernate是全自动ORM框架,完全基于对象操作,不用手写SQL,框架自动生成SQL、管理事务和缓存,开发速度快,但SQL不可控,复杂查询、多表关联、批量操作场景下容易出现低效SQL,优化成本极高,且自定义拓展性差。
MyBatis是半自动ORM框架,将SQL与代码解耦,SQL由开发者手动编写、自主优化,支持动态SQL、自定义结果映射,适配互联网高频的复杂业务查询、分表分库、批量数据操作。同时轻量、上手简单、容错率低,调试问题更直观。
我项目中选择MyBatis,核心是业务场景需要频繁优化SQL、做分页、多条件动态查询,且后期需要对接分库分表,MyBatis的可控性和拓展性更适配,而Hibernate的全自动特性会导致线上SQL性能不可控,不适合互联网高并发业务。日常开发中配合MyBatis-Plus,兼顾了基础CRU
原创力文档

文档评论(0)