本仓库为【Java工程师技术指南】力求打造最完整最实用的Java工程师学习指南!
这些文章和总结都是我近几年学习Java总结和整理出来的,非常实用,对于学习Java后端的朋友来说应该是最全面最完整的技术仓库。
我靠着这些内容进行复习,拿到了BAT等大厂的offer,这个仓库也已经帮助了很多的Java学习者,如果对你有用,希望能给个star支持我,谢谢!
为了更好地讲清楚每个知识模块,我们也参考了很多网上的优质博文,力求不漏掉每一个知识点,所有参考博文都将声明转载来源,如有侵权,请联系我。
点击关注[微信公众号](#微信公众号)及时获取笔主最新更新文章,并可免费领取Java工程师必备学习资源
![](https://www.java-family.cn/BlogImage/%E5%8D%95%E6%8E%A8/16.jpg)
## 目录
- [Java全栈学习路线](#Java全栈学习路线)
- [Java基础](#Java基础)
- [基础知识](#基础知识)
- [容器](#容器)
- [JavaWeb](#JavaWeb)
- [Spring](#Spring)
- [SpringMVC](#SpringMVC)
- [SpringBoot](#SpringBoot)
- [SpringCloud](#SpringCloud)
- [微服务授权鉴权](#微服务授权鉴权)
- [Java进阶](#Java进阶)
- [并发](#并发)
- [JVM](#JVM)
- [数据库](#数据库)
- [MySQL](#MySQL)
- [缓存](#缓存)
- [Redis](#Redis)
- [消息队列](#消息队列)
- [RabbitMQ](#RabbitMQ)
- [RocketMQ](#RocketMQ)
- [Kafka](#Kafka)
- [面试指南](#面试指南)
- [面试八股文](#面试八股文)
- [城市选择](#城市选择)
- [开发工具](#开发工具)
- [微信公众号](#微信公众号)
- [码猿技术专栏](#码猿技术专栏)
## Java全栈学习路线
[在线浏览地址](https://www.processon.com/view/link/63491868e401fd06f762fc15)
> 访问密码:6666
图片如下:
![](https://www.java-family.cn/BlogImage/20230129160229.png)
## Java基础
### 基础知识
* [面向对象基础](docs/java/basic/1、面向对象基础.md)
* [Java基本数据类型](docs/java/basic/2、Java基本数据类型.md)
* [string和包装类](docs/java/basic/3、string和包装类.md)
* [final关键字特性](docs/java/basic/4、final关键字特性.md)
* [Java类和包](docs/java/basic/5、Java类和包.md)
* [抽象类和接口](docs/java/basic/6、抽象类和接口.md)
* [代码块和代码执行顺序](docs/java/basic/7、代码块和代码执行顺序.md)
* [Java自动拆箱装箱里隐藏的秘密](docs/java/basic/8、Java自动拆箱装箱里隐藏的秘密.md)
* [Java中的Class类和Object类](docs/java/basic/9、Java中的Class类和Object类.md)
* [Java异常](docs/java/basic/10、Java异常.md)
* [解读Java中的回调](docs/java/basic/11、解读Java中的回调.md)
* [反射](docs/java/basic/12、反射.md)
* [泛型](docs/java/basic/13、泛型.md)
* [枚举类](docs/java/basic/14、枚举类.md)
* [Java注解和最佳实践](docs/java/basic/15、Java注解和最佳实践.md)
* [JavaIO流](docs/java/basic/16、JavaIO流.md)
* [多线程](docs/java/basic/17、多线程.md)
* [深入理解内部类](docs/java/basic/18、深入理解内部类.md)
* [javac和javap](docs/java/basic/20、javac和javap.md)
* [Java8新特性终极指南](docs/java/basic/21、Java8新特性终极指南.md)
* [序列化和反序列化](docs/java/basic/22、序列化和反序列化.md)
* [继承、封装、多态的实现原理](docs/java/basic/23、继承、封装、多态的实现原理.md)
### 容器
* [Java集合类总结](docs/java/collection/Java集合类总结.md)
* [Java集合详解1:一文读懂ArrayList,Vector与Stack使用方法和实现原理](docs/java/collection/Java集合详解1:一文读懂ArrayList,Vector与Stack使用方法和实现原理.md)
* [Java集合详解2:Queue和LinkedList](docs/java/collection/Java集合详解2:Queue和LinkedList.md)
* [Java集合详解3:Iterator,fail-fast机制与比较器](docs/java/collection/Java集合详解3:Iterator,fail-fast机制与比较器.md)
* [Java集合详解4:HashMap和HashTable](docs/java/collection/Java集合详解4:HashMap和HashTable.md)
* [Java集合详解5:深入理解LinkedHashMap和LRU缓存](docs/java/collection/Java集合详解5:深入理解LinkedHashMap和LRU缓存.md)
* [Java集合详解6:TreeMap和红黑树](docs/java/collection/Java集合详解6:TreeMap和红黑树.md)
* [Java集合详解7:HashSet,TreeSet与LinkedHashSet](docs/java/collection/Java集合详解7:HashSet,TreeSet与LinkedHashSet.md)
* [Java集合详解8:Java集合类细节精讲](docs/java/collection/Java集合详解8:Java集合类细节精讲.md)
## JavaWeb
* [走进JavaWeb技术世界1:JavaWeb的由来和基础知识](docs/java-web/走进JavaWeb技术世界1:JavaWeb的由来和基础知识.md)
* [走进JavaWeb技术世界2:JSP与Servlet的曾经与现在](docs/java-web/走进JavaWeb技术世界2:JSP与Servlet的曾经与现在.md)
* [走进JavaWeb技术世界3:JDBC的进化与连接池技术](docs/java-web/走进JavaWeb技术世界3:JDBC的进化与连接池技术.md)
* [走进JavaWeb技术世界4:Servlet 工作原理详解](docs/java-web/走进JavaWeb技术世界4:Servlet%20工作原理详解.md)
* [走进JavaWeb技术世界5:初探Tomcat的HTTP请求过程](docs/java-web/走进JavaWeb技术世界5:初探Tomcat的HTTP请求过程.md)
* [走进JavaWeb技术世界6:Tomcat5总体架构剖析](docs/java-web/走进JavaWeb技术世界6:Tomcat5总体架构剖析.md)
* [走进JavaWeb技术世界7:Tomcat和其他WEB容器的区别](docs/java-web/走进JavaWeb技术世界7:Tomcat和其他WEB容器的区别.md)
* [走进JavaWeb技术世界8:浅析Tomcat9请求处理流程与启动部署过程](docs/java-web/走进JavaWeb技术世界8:浅析Tomcat9请求处理流程与启动部署过程.md)
* [走进JavaWeb技术世界9:Java日志系统的诞生与发展](docs/java-web/走进JavaWeb技术世界9:Java日志系统的诞生与发展.md)
* [走进JavaWeb技术世界10:从JavaBean讲到Spring](docs/java-web/走进JavaWeb技术世界10:从JavaBean讲到Spring.md)
* [走进JavaWeb技术世界11:单元测试框架Junit](docs/java-web/走进JavaWeb技术世界11:单元测试框架Junit.md)
* [走进JavaWeb技术世界12:从手动编译打包到项目构建工具Maven](docs/java-web/走进JavaWeb技术世界12:从手动编译打包到项目构建工具Maven.md)
* [走进JavaWeb技术世界13:Hibernate入门经典与注解式开发](docs/java-web/走进JavaWeb技术世界13:Hibernate入门经典与注解式开发.md)
* [走进JavaWeb技术世界14:Mybatis入门](docs/java-web/走进JavaWeb技术世界14:Mybatis入门.md)
* [深入JavaWeb技术世界15:深入浅出Mybatis基本原理](docs/java-web/深入JavaWeb技术世界15:深入浅出Mybatis基本原理.md)
* [走进JavaWeb技术世界16:极简配置的SpringBoot](docs/java-web/走进JavaWeb技术世界16:极简配置的SpringBoot.md)
### Spring
* [Spring源码剖析1:Spring概述](docs/java-web/Spring/Spring源码剖析1:Spring概述.md)
* [Spring源码剖析2:初探Spring IOC核心流程](docs/java-web/Spring/Spring源码剖析2:初探Spring%20IOC核心流程.md)
* [Spring源码剖析3:Spring IOC容器的加载过程 ](docs/java-web/Spring/Spring源码剖析3:Spring%20IOC容器的加载过程.md)
* [Spring源码剖析4:懒加载的单例Bean获取过程分析](docs/java-web/Spring/Spring源码剖析4:懒加载的单例Bean获取过程分析.md)
* [Spring源码剖析5:JDK和cglib动态代理原理详解 ](docs/java-web/Spring/Spring源码剖析5:JDK和cglib动态代理原理详解.md)
* [Spring源码剖析6:Spring AOP概述](docs/java-web/Spring/Spring源码剖析6:Spring%20AOP概述.md)
* [Spring源码剖析7:AOP实现原理详解 ](docs/java-web/Spring/Spring源码剖析7:AOP实现原理详解.md)
* [Spring源码剖析8:Spring事务概述](docs/java-web/Spring/Spring源码剖析8:Spring事务概述.md)
* [Spring源码剖析