2021 年的互联网行业竞争越来越严峻,面试也是越来越难,一直以来我都想整理一套完美的面试宝典,奈何难抽出时间,这套 Java 面试手册我整理了整整 1 个月,上传到 Git 上目前 star 数达到了 30K+

这套互联网 Java 工程师面试题包括了:MyBatis、ZK、Dubbo、EL、Redis、MySQL、并发编程、Java 面试、Spring、微服务、Linux、Springboot、SpringCloud、MQ、Kafka 面试专题(共 485 页,32W 字)

阿里 P8 熬了一个月肝出这份 32W 字的 Java 面试手册,有需要的小伙伴仅需  戳此传送门 获取即可获取免费下载方式!

Java 面试题目录

MyBatis 面试篇

        
  1.     

    什么是 Mybatis?

        
  2.     
  3.     

    Mybaits 的优点:

        
  4.     
  5.     

    myBatis 框架的缺点:

        
  6.     
  7.     

    MyBatis 框架适用场合:

        
  8.     
  9.     

    MyBatis 与 Hibernate 有哪些不同?

        
  10.     
  11.     

    #和 $的区别是什么?

        
  12.     
  13.     

    当实体类中的属性名和表中的字段名不一样·怎么办?

        
  14.     
  15.     

    模糊查询 like 语词该怎么写?

        
  16.     
  17.     

    通常一个 Xml 映射文件,都会写一个 Dao 接口与之对应,请问,这个 Dao 接口的工作原理是 tDa

        
  18.     
  19.     

    Mybatiz 是如何进行分页的?分页插件的原理是什么?

        

Zookeeper 面试篇

        
  1.     

    ZooKeeper 面 j 试题?

        
  2.     
  3.     

    ZooKeeper 提供了什么?

        
  4.     
  5.     

    Zookeeper 文件系统

        
  6.     
  7.     

    ZAB 协议?

        
  8.     
  9.     

    四种类型的数据节点 Znode

        
  10.     
  11.     

    Zookeeper "atcher 机制--数据变更通知

        
  12.     
  13.     

    客户端注册 watcher 实现

        
  14.     
  15.     

    服务端处理 watcher 实现

        
  16.     
  17.     

    客户端回调 atcher

        
  18.     
  19.     

    ACL 权限控制机制

        
  20.     
  21.     

    Chroot 特性

        
  22.     
  23.     

    会话管理

        
  24.     
  25.     

    服务器角色

        

Dubbo 面试篇

        
  1.     

    为什么要用 Dubbo?

        
  2.     
  3.     

    Dubbo 的整体架构设计有哪些分层?

        
  4.     
  5.     

    默认使用的是什么通信框架,还有别的选择吗?

        
  6.     
  7.     

    服务调用是阻塞的吗?

        
  8.     
  9.     

    一般使用什么注册中心?还有别的选择吗?

        
  10.     
  11.     

    默认使用什么序列化框架,你知道的还有哪些?

        
  12.     
  13.     

    服务提供者能实现失效提出是什么原理?后、服务上线怎么不影响旧版本?

        
  14.     
  15.     

    如何解决服务调用链过长的问题?10、说说核心的配置有哪些?

        
  16.     
  17.     

    Dubbo 推荐用什么协议?

        
  18.     
  19.     

    同一个服务多个注册的情况下可以直连某一个服务吗?

        
  20.     
  21.     

    画—画服务注册与发现的流程图?

        
  22.     
  23.     

    Dubbo 集群容错有几种方案?

        
  24.     
  25.     

    Dubb。服务降级,失败重试怎么做?

        
  26.     
  27.     

    Dubb。使用过程中都遇到了些什么问题?

        
  28.     
  29.     

    Dubbo Monitor 实现原理?

        
  30.     
  31.     

    Dubbo 用到哪些设计模式?

        
  32.     
  33.     

    Dubbo 配置文件是如何加载到 Spring 中的?

        
  34.     
  35.     

    Dubbo SPI 和 Java SPI 区别?

        
  36.     
  37.     

    Dubb。支持分布式事务吗?

        
  38.     
  39.     

    Dubbo 可以对结果进行缓存吗?

        
  40.     
  41.     

    服务上线怎么兼容旧版本?

        
  42.     
  43.     

    Dubbo 必须依赖的包有哪些?

        
  44.     
  45.     

    Dubbo telnet 命令能做什么?

        
  46.     
  47.     

    Dubbo 支持服务降级吗?

        
  48.     
  49.     

    Dubbo 如何优雅停机?

        
  50.     
  51.     

    Dubbo 和 Dubbox 之间的区别?

        
  52.     
  53.     

    Dubbo 和 Spring Cloud 的区别?你还了解别的分布式框架吗?

        

Redis 面试篇

        
  1.     

    什么是 Redis?

        
  2.     
  3.     

    Redis 的数据类型?

        
  4.     
  5.     

    使用 Redis 有哪些好处?

        
  6.     
  7.     

    Rediz 相比 Memcached 有哪些优势?

        
  8.     
  9.     

    Memcache 与 Redi s 的区别都有哪些?

        
  10.     
  11.     

    Redis 是单进程还是单线程的?

        
  12.     
  13.     

    一个字符串类型的值 能存储最大容积是多少?

        
  14.     
  15.     

    Redi s 的持久化机制是什么?各自的优缺点?

        
  16.     
  17.     

    Redi s 常见性能问题和解决方案:10、redis 过期键的删除策略?

        
  18.     
  19.     

    Redis 的回收策略(淘汰策略〉?

        
  20.     
  21.     

    为什么 ediz 需要把所有数据放到内存中?13、Redi z 的同步机制了解么?

        
  22.     
  23.     

    Fipeline 有什么好处,为什么要用 pipeline?

        
  24.     
  25.     

    是否使用过 Redi z 集群,集群的原理是什么?

        

MySQL 面试篇

        
  1.     

    MySQL 中有哪几种锁?

        
  2.     
  3.     

    MySQL 中有哪些不同的表格?

        
  4.     
  5.     

    简述在 MySQI 数据库中 My 工 SAM 和 InnoDB 日的区别

        
  6.     
  7.     

    MysQL 中 InnoDB 支持的四种事务隔离级别名称,以及逐级之间的区别?

        
  8.     
  9.     

    CHAR 和 VARCHAR 的区别?

        
  10.     
  11.     

    主键和候选键有什么区别?

        
  12.     
  13.     

    myisamchk 是用来做什么的?

        
  14.     
  15.     

    如果一个表有一列定义为 TIMESTAMP,将发生什么?

        
  16.     
  17.     

    你怎么看到为表格定义的所有索引?

        
  18.     
  19.     

    LTRE 声明中的 %和_是什么意思?

        
  20.     
  21.     

    列对比运算符是什么?

        
  22.     
  23.     

    BLDE 和 TEXT 有什么区别?

        
  24.     
  25.     

    MysQL_fetch_array 和 MySQL_fetch_object 的区别是什么?

        
  26.     
  27.     

    MyISAM 表格将在哪里存储,并且还提供其存储格式?

        
  28.     
  29.     

    MySQI 如何优化 DISTIHCT?

        
  30.     
  31.     

    如何显示前 50 行?

        

Java 并发编程篇

        
  1.     

    并发编程三要素?

        
  2.     
  3.     

    实现可见性的方法有哪些?

        
  4.     
  5.     

    多线程的价值?

        
  6.     
  7.     

    创建线程的有哪些方式?

        
  8.     
  9.     

    创建线程的三种方式的对比?

        
  10.     
  11.     

    线程的状态流转图

        
  12.     
  13.     

    Jave 线程具有五中基本状态

        
  14.     
  15.     

    什么是线程池?有哪几种创建方式?

        
  16.     
  17.     

    四种线程池的创建

        
  18.     
  19.     

    线程池的优点?

        
  20.     
  21.     

    常用的并发 I 具类有哪些?

        
  22.     
  23.     

    Cycli cB arr i er 和 CountDownLatch 的区别

        
  24.     
  25.     

    synchr oni zed 的作用?

        
  26.     
  27.     

    volatile 关键字的作用

        
  28.     
  29.     

    什么是 CAS

        
  30.     
  31.     

    CAS 的问题

        

Spring 面试篇

        
  1.     

    什么是 spring?

        
  2.     
  3.     

    使用 Spring 框架的好处是什么?

        
  4.     
  5.     

    Spri ne 由哪些模块组成?

        
  6.     
  7.     

    核心容器(应用上下文)模块。

        
  8.     
  9.     

    BeanFactory 一 BeanFactory 实现举例。

        
  10.     
  11.     

    XMLBeanF actory

        
  12.     
  13.     

    解释 AOP 模块

        
  14.     
  15.     

    解释 JBC 抽象和 DAD 模块。

        
  16.     
  17.     

    解释对象/关系映射集成模块。

        
  18.     
  19.     

    解释 WEB 模块。

        
  20.     
  21.     

    Sprinr 配置文件

        
  22.     
  23.     

    什么是 Spring IOC 容器?

        
  24.     
  25.     

    IOC 的优点是什么?