2025-06-01
面试与规划
0

目录

面向企业的学习路线
划重点
阶段 1️⃣:企业级开发入门
Spring
SpringBoot
SpringMVC
SpringCloud
SpringCloud Alibaba
Mybatis、MyBatis Plus
Mysql 数据库
Redis 缓存
消息队列
企业级项目的实战应用
阶段 2️⃣:进阶
Java 8、11、17 的新特性
设计模式
分布式、微服务
JVM
JUC
阶段 3️⃣:深入
源码
调优
数据结构与算法
阶段 4️⃣:扩展
Netty
操作系统
计算机网络
Nginx
Linux
Docker
监控体系
项目实战

总结了下 Java 的学习路线与未来的职业规划,欢迎阅读 👏🏻

  • 本文适用于有一定基础的新手小白玩家,想要抓重点快速拿下offer
  • 同样适用于有一定工作年龄的开发者,想要提升自己的技术能力,提升职业发展上限
  • 也适用于高级玩家,提供一些职业生涯规划上帮助与借鉴

面向企业的学习路线

划重点

  • 1️⃣ 工作面试中的必备知识点,重点学习!!!
  • 2️⃣ 掌握理论与技巧,在项目中熟练运用,必知必会
  • 3️⃣ 提升广度与深度能力,迈向高级的毕竟之路
  • 4️⃣ 全知全能的道路,快速成长

阶段 1️⃣:企业级开发入门

Spring

  • IOC
  • AOP
  • 代理
  • 事务

SpringBoot

  • 基础使用
  • 核心注解
  • 配置文件
  • 自动装配
  • 监听机制
  • 内嵌Tomcat的Web容器原理
  • 健康检查Actuator

SpringMVC

  • MVC
  • 常用注解
  • RESTful
  • 序列化
  • 跨域
  • 拦截器
  • 全局配置
  • Template
  • 执行流程

SpringCloud

  • 服务注册与发现
  • Ribbon 负载均衡
  • Feign 服务调用
  • Gateway 网关

SpringCloud Alibaba

  • Nacos 注册、配置中心
  • OpenFeign 服务调用
  • Sentinel 流控
  • Seata 分布式事务

Mybatis、MyBatis Plus

  • 增删改查
  • 动态SQL
  • 配置文件
  • 注解
  • XML
  • 一级、二级缓存
  • 分页实现原理
  • 乐观锁、悲观锁
  • 延迟加载
  • 代码生成

Mysql 数据库

  • 三范式、反三范式
  • 数据类型
  • 存储引擎
  • SQL 编写
  • 索引
  • 事务
  • 视图
  • 锁机制
  • 存储过程、函数
  • 触发器
  • 性能调优
  • MVCC
  • 读写分离

Redis 缓存

  • 数据类型
  • 持久化
  • 过期键的删除策略
  • 线程模型
  • 事务
  • 集群方案
  • 分片
  • 分布式锁
  • 缓存异常
  • Lua脚本

消息队列

  • 消息队列的选型
  • 消息的顺序
  • 消息的可靠性
  • 消息幂等
  • 高可用
  • 消息堆积
  • MQ设计思路

企业级项目的实战应用

阶段 2️⃣:进阶

Java 8、11、17 的新特性

Java 8:

  • Lambda 表达式
  • Stream API
  • 新日期时间 API
  • 接口default默认方法

Java11:

  • 局部变量类型推断
  • 字符串方法增强
  • 引入了 Z Garbage Collector(ZGC)
  • 优化常量池字符串处理

Java17:

  • Switch表达式增强
  • 新的类型推断
  • 实例方法引用
  • HTTP客户端改进
  • ZGC改进
  • Unicode 13 字符和表情符号的支持
  • record关键字

设计模式

掌握常用的设计模式

  • 单例模式
  • 抽象工厂
  • 适配器模式
  • 组合模式
  • 装饰器模式
  • 代理模式
  • 模板方法模式
  • 策略模式
  • 状态模式
  • 责任链模式
  • 观察者模式

分布式、微服务

  • BASE 理论
  • CAP 原理
  • 分布式ID
  • 分布式锁
  • 分布式事务
  • Raft一致性算法

JVM

  • Java内存区域
  • 内存分配策略
  • 垃圾回收算法
  • 垃圾收集器
  • 类加载机制

JUC

  • Java内存模型
  • CAS
  • synchronized
  • volatile
  • final
  • AQS
  • ReentrantLock
  • ReentrantReadWriteLock
  • ConcurrentHashMap
  • CopyOnWriteArrayList
  • BlockingQueue
  • ThreadLocal
  • 线程池
  • CountDownLatch
  • CyclicBarrier

阶段 3️⃣:深入

源码

  • JUC
  • Spring IOC/AOP
  • SpringBoot
  • SpringMVC
  • Nacos
  • MyBatis
  • Netty
  • RocketMQ

调优

  • 高并发、海量数据处理
  • 缓存设计
  • JVM调优
  • SQL调优

数据结构与算法

  • 数组、链表、栈、队列、散列表、树、图
  • 排序算法、算法思想、算法应用、算法题(力扣)

阶段 4️⃣:扩展

Netty

  • I/O模型
  • 线程模型
  • 零拷贝
  • 架构设计

操作系统

  • 操作系统的组成
  • 进程 / 线程
  • 进程 / 线程间通讯方式
  • 进程调度算法
  • 进程 / 线程同步方式
  • 进程 / 线程状态
  • 死锁
  • 内存管理
  • 局部性原理

计算机网络

  • 网络分层模型
  • 网络传输过程
  • IP + 端口
  • UDP / TCP 协议
  • HTTP / HTTPS 协议
  • ARP 地址解析协议
  • DNS 域名解析
  • 网络安全

Nginx

  • 负载均衡
  • 反向代理
  • 配置
  • 动静分离(网站部署)
  • 集群搭建

Linux

  • 基础命令
  • 文件管理
  • 权限
  • Shell脚本
  • 环境搭建

Docker

  • 基础命令
  • 镜像构建
  • 镜像管理
  • 容器操作
  • 调试与日志
  • Docker Compose编排
  • 网络隔离

监控体系

  • Prometheus + Grafana监控容器内JVM指标

项目实战

  • 推荐系统
  • 电商系统
  • 搜索系统
  • 支付系统
  • 即时通讯
  • 秒杀活动

本文作者:柳始恭

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!