本文档是从阿里面试官整理的 Java 面试题;包含了 Java 基础、Java 集合容器、Java 异常、并发编程、JVM、Spring、Spring MVC、Spring Boot、Spring Cloud、MyBatis、Redis、MySQL 数据库、消息中间件 MQ 与 RabbitMQ、Dubbo、Linux、Tomcat、ZooKeeper、Netty、 架构设计 &分布式 &数据结构与算法等等,都是互联网大厂的面试真题,已经有粉丝靠这份 PDF 拿下众多大厂的 offer。
Java 基础知识专题
Java 集合容器专题
-
怎么确保一个集合不能被修改?
-
如何决定使用 HashMap 还是 TreeMap?
-
HashMap 在 JDK1.7 和 JDK1.8 中有哪些不同?HashMap 的底层实现
-
ConcurrentHashMap 底层具体实现知道吗?实现原理是什么?
Java 异常专题
-
throw 和 throws 的区别是什么?
-
try-catch-finally 中,如果 catch 中 return 了,finally 还会执行吗?
-
包装异常时不要抛弃原始的异常
并发编程专题
-
as-if-serial 规则和 happens-before 规则的区别
-
说说自己是怎么使用 synchronized 关键字,在项目中用到了吗
-
Java Concurrency API 中的 Lock 接口(Lock interface)是什么?对比同步它有什么优势?
-
乐观锁和悲观锁的理解及如何实现,有哪些实现方式?
-
ThreadLocal 内存泄漏解决方案?
-
什么是原子操作?在 Java Concurrency API 中有哪些原子类(atomicclasses)?
Spring 专题
-
Spring 如何设计容器的,BeanFactory 和 ApplicationContext 的关系详解
-
哪些是重要的 bean 生命周期方法? 你能重载它们吗?
-
解释不同方式的自动装配,spring 自动装配 bean 有哪些方式?
-
如何通过 HibernateDaoSupport 将 Spring 和 Hibernate 结合起来?
-
在 Spring AOP 中,关注点和横切关注的区别是什么?在 spring aop 中 concern 和 cross-cutting concern 的不同之处
Spring MVC 专题
-
Spring MVC 的控制器是不是单例模式,如果是,有什么问题,怎么解决?
-
请描述 Spring MVC 的工作流程?描述一下 DispatcherServlet 的工作流程?
-
MVC 是什么?MVC 设计模式的好处有哪些
-
SpingMvc 中的控制器的注解一般用哪个,有没有别的注解可以替代?
-
如果在拦截请求中,我想拦截 get 方式提交的方法,怎么配置
Spring Boot 专题
-
spring boot 核心配置文件是什么?bootstrap.properties 和 application.properties 有何区别 ?
-
比较一下 Spring Security 和 Shiro 各自的优缺点 ?
-
Spring Boot 中如何解决跨域问题 ?
-
如何在 Spring Boot 中禁用 Actuator 端点安全性?
-
什么是 Swagger?你用 Spring Boot 实现了它吗?
Spring Cloud 专题
-
负载平衡的意义什么?
-
什么是 Hystrix?它如何实现容错?
-
什么是 Spring Cloud Bus?我们需要它吗?
MyBatis 专题
Redis 专题
MySQL 数据库专题
消息中间件 MQ 与 RabbitMQ 专题
Dubbo 专题
Linux 专题
ZooKeeper 专题
Netty 专题