总体路线
建议按 12~16 周 来规划。
如果你每天能学 5~7 小时,可以按 12 周推进;如果每天只有 2~4 小时,建议拉长到 16~20 周。
主线分成 6 个阶段:
| 阶段 | 时间 | 目标 |
|---|---|---|
| 阶段一 | 第 1~3 周 | JavaSE 打基础 + 算法启动 |
| 阶段二 | 第 4~5 周 | MySQL、JavaWeb、Spring 基础 |
| 阶段三 | 第 6~8 周 | SpringBoot、Redis、黑马点评项目 |
| 阶段四 | 第 9~10 周 | JVM、JUC、RocketMQ、SpringCloud |
| 阶段五 | 第 11~12 周 | 项目二 + 简历 + 八股整理 |
| 阶段六 | 第 13 周以后 | AI 应用开发 / Agent / RAG 加分方向 |
阶段一:JavaSE + 算法启动
第 1~3 周:JavaSE
目标:掌握 Java 基础语法,能看懂后端项目代码。
重点学:
- 基本语法、数据类型、流程控制
- 面向对象:类、对象、继承、多态、接口
- 常用类:String、包装类、时间类
- 集合:List、Set、Map、Queue
- 泛型、异常、IO
- Stream 流、Lambda
- 反射、注解
- 多线程基础
学习方式:
- 视频倍速看,不要一节一节死磕。
- 前期代码适当敲,主要熟悉语法和 IDE。
- 集合、面向对象、多线程基础要认真学。
- JavaSE 学到集合后,就可以开始刷算法。
同步启动算法:
每天刷 1~2 题即可,先刷:
- Hot100
- Codetop 前 5 页
- 后期目标是 Codetop 前 10 页反复刷熟
你文档里也提到,只刷 Hot100 不够,建议 Codetop 前 5 页要非常熟,最好前 10 页也熟。
阶段二:MySQL + JavaWeb + Spring 基础
第 4 周:MySQL + JDBC + JavaWeb
MySQL:4~5 天
重点:
- SQL 基础
- 索引
- 事务
- 锁
- MVCC
- InnoDB
- SQL 优化
- 日志
- 主从复制、分库分表了解即可
MySQL 是四大件之一,必须认真学。视频可以快速过,真正重要的是后面结合小林 Coding 反复理解。
JDBC:半天
只需要知道:
- Java 如何连接数据库
- DriverManager、Connection、PreparedStatement、ResultSet 是什么
- 为什么后面会被 MyBatis / MyBatisPlus 封装
不用花太多时间。
JavaWeb:3~4 天
重点:
- HTTP 请求响应
- Servlet 基础
- Tomcat
- Maven 基本使用
- 前后端交互基本流程
- Cookie、Session 了解
前端部分快速看,Maven 会用即可。
第 5 周:SSM 核心 + Git + Linux
SSM:只学核心
SSM 不建议完整死磕,只掌握 SpringBoot 之前必须理解的底层概念。
重点:
- Spring IOC
- Spring AOP
- Bean 生命周期
- 事务管理
- SpringMVC 请求流程
- MyBatis 基本使用
- Mapper、XML、动态 SQL
跳过:
- MyBatisPlus 细枝末节
- 太多 demo 项目
- 动力节点完整路线
- 复杂源码深挖
你文档里也说明,SSM 现在不会单独用,主要是作为 SpringBoot 的底层基础。
Git:1~2 天
必须动手:
- init、add、commit
- branch、merge
- pull、push
- 解决冲突
- GitHub 创建远程仓库
- 项目上传 GitHub
Linux:1~2 天
重点:
- cd、ls、pwd、mkdir、rm、cp、mv
- vim 基本操作
- ps、top、kill
- grep、tail、cat
- chmod
- 查看日志
- 简单部署 jar 包
Git 和 Linux 不一定面试常问,但默认你会,必须练。
阶段三:SpringBoot + Redis + 黑马点评
第 6 周:SpringBoot
目标:能独立写一个后端 CRUD 项目。
重点:
- SpringBoot 项目结构
- Controller、Service、Mapper 分层
- 配置文件
- 参数校验
- 统一返回结果
- 全局异常处理
- 拦截器
- 整合 MyBatis / MyBatisPlus
- 整合 Redis
- 接口调试
建议自己写一个小 demo:
- 用户注册登录
- 文章/笔记 CRUD
- 分类管理
- 简单后台管理接口
这个 demo 不放简历,只用来练手。
第 7~8 周:Redis + 黑马点评项目
Redis 是重点,建议认真学。
重点:
- Redis 基本数据结构
- 缓存穿透、击穿、雪崩
- 分布式锁
- Redisson
- Redis 持久化
- 主从、哨兵、集群
- 秒杀场景
- HyperLogLog、Bitmap、ZSet 应用
- 缓存一致性
项目建议:黑马点评必须做一遍。
你的文档里也明确提到,Redis 课程中包含黑马点评,是很适合作为 Java 入门项目的完整项目。
黑马点评不要只是照抄,建议做二次改造,例如:
- 优化优惠券秒杀流程
- 加入 Redisson 分布式锁
- 加入接口限流
- 加入用户行为统计
- 加入店铺推荐排序
- 加入 AI 点评总结 / AI 推荐理由
- 加入日志监控和异常告警
这样简历上就不会像原版培训项目。
阶段四:JVM + JUC + RocketMQ + SpringCloud
第 9 周:JVM + JUC
这两个都是四大件,面试高频。
JVM 重点
- JVM 内存结构
- 类加载机制
- 双亲委派
- 垃圾回收算法
- 垃圾收集器
- GC 日志分析
- OOM 排查
- JVM 调优基本思路
JUC 重点
- 线程创建方式
- synchronized
- volatile
- CAS
- AQS
- ReentrantLock
- ThreadLocal
- 线程池
- CompletableFuture
- ConcurrentHashMap
学习方式:
- 视频只看一遍。
- JUC 和 JVM 结合 JavaGuide、二哥 Java 进阶之路看。
- 后面八股统一看小林 Coding,不要到处背冷门题。
你的原文也建议 JUC、JVM 不要反复看视频,要结合 JavaGuide 和二哥文档,后面再用小林 Coding 做面试题整理。
第 10 周:RocketMQ + SpringCloud
RocketMQ:1~2 天
重点:
- MQ 解决什么问题
- 异步、削峰、解耦
- 普通消息
- 延迟消息
- 顺序消息
- 事务消息
- 消息可靠性
- 重复消费和幂等
RocketMQ 和 Kafka 选一个即可,Java 后端方向 RocketMQ 很够用。
SpringCloud:3~4 天
重点:
- 微服务基本概念
- 注册中心
- OpenFeign
- Gateway
- 配置中心
- 服务熔断、降级
- 分布式事务了解
跳过:
- 课程中重复的 Docker
- 复杂 MQ
- ES 大段内容
- 不必要的 demo
你文档里也提到 SpringCloud 中部分 Docker、MQ、ES 内容可以跳过,非重点部分不必跟敲。
阶段五:项目 + 简历 + 八股
第 11~12 周:准备两个项目
简历最好有两个项目。
项目一:黑马点评改造版
方向:Java 后端核心项目。
可以包装成:
本地生活服务平台 / 商户点评与秒杀系统
亮点建议:
- Redis 缓存优化
- 分布式锁解决超卖
- Lua 脚本保证原子性
- MQ 异步下单
- 用户签到统计
- Feed 流推送
- 热点商户缓存预热
- 接口限流
- 压测对比优化前后性能
项目二:AI 应用项目
建议做一个和 Java 后端结合的 AI 项目,但核心 AI 服务用 Python / TypeScript。
可以选一个:
方向 A:AI 简历优化 / 面试助手
功能:
- 上传简历
- 自动分析项目亮点
- 生成面试问题
- 模拟面试
- 根据回答生成改进建议
- RAG 检索岗位 JD 和项目内容
技术栈:
- Java SpringBoot 做后端业务
- Python / LangChain / LangGraph 做 AI 服务
- Redis 做会话缓存
- MySQL 存用户和历史记录
- 向量数据库可选 Milvus / Chroma / pgvector
方向 B:AI 学习助手
功能:
- 上传课程笔记 / PDF
- 自动生成知识图谱
- 自动生成题目
- 错题复盘
- RAG 问答
- 学习计划生成
方向 C:AI 代码评审助手
功能:
- 接入 GitHub 仓库
- 自动分析 Pull Request
- 生成代码审查意见
- 检查潜在 bug
- 生成单测建议
- 结合项目规范做 RAG 检索
这个方向很适合面试聊 AI Coding。
八股学习安排
不要单独花一个月死背八股,建议边学边整理。
四大件优先级:
- MySQL
- Redis
- JUC
- JVM
其次:
- Spring
- SpringBoot
- MQ
- 计算机网络
- 操作系统
- 项目场景题
每日安排:
- 30 分钟复盘当天技术点
- 30 分钟整理八股
- 30~60 分钟刷算法
- 项目阶段每天至少 2 小时写项目
八股资料优先级:
- 小林 Coding
- JavaGuide
- 二哥 Java 进阶之路
- pdai
- 面经补充
算法路线
算法不要系统学数据结构课,直接刷题。
顺序:
第一轮:熟悉套路
- Hot100
- LeetCode 75
- 高频 SQL 50
每题 5~10 分钟没思路就看题解。
第二轮:面试高频
- Codetop 前 5 页
- 重点公司高频题
- 反复刷到能默写思路
第三轮:笔试补充
- 牛客 ACM 模式
- 每周 1 次 LeetCode 周赛
- 熟悉 Scanner 输入输出
重点题型:
- 双指针
- 滑动窗口
- 哈希表
- 二分
- 栈和队列
- 链表
- 二叉树
- 回溯
- 动态规划
- 图论基础
AI 应用开发路线
你原文中也提到,AI 应用开发可以从 Python 基础、Agent/RAG、LangChain/LangGraph、LoRA 微调、AI 前沿和 AI Coding 使用经验几个方向切入。
建议放在 Java 主线之后,或者从第 8 周开始穿插学。
第 13~14 周:Python + Agent / RAG
重点:
- Python 基础语法
- requests、FastAPI
- LLM API 调用
- Prompt 基础
- Embedding
- 向量数据库
- RAG 流程
- LangChain
- LangGraph
- 工具调用
推荐学习:
- Datawhale hello-agents
- Datawhale all in RAG
- LangChain / LangGraph 官方文档
第 15~16 周:AI 项目完善
重点做出一个能展示的项目:
- 有前端页面更好
- 有 GitHub 仓库
- 有 README
- 有系统架构图
- 有技术难点
- 有真实使用场景
- 有 AI Coding 使用经验总结
面试时要能讲:
- 为什么做这个项目
- RAG 怎么切分文档
- 向量检索怎么做
- 如何减少幻觉
- Agent 工具调用怎么设计
- AI Coding 工具怎么用
- 哪些代码是 AI 辅助完成的
- 你如何判断 AI 生成代码是否可靠
每天学习模板
建议每天按这个节奏:
| 时间 | 内容 |
|---|---|
| 2~3 小时 | 主线课程 / 文档 |
| 1~2 小时 | 项目实践 |
| 1 小时 | 算法 |
| 30 分钟 | 八股整理 |
| 30 分钟 | 复盘总结 |
如果时间少,优先级是:
项目 > 四大件 > 算法 > 框架细节 > 进阶路线
最终路线精简版
你可以直接按这个顺序学:
- JavaSE
- 算法启动:Hot100 / Codetop
- MySQL
- JDBC 了解
- JavaWeb
- SSM 核心
- Git
- Linux
- SpringBoot
- Redis + 黑马点评
- JVM
- JUC
- RocketMQ
- SpringCloud
- 项目一改造
- 项目二 AI 应用
- 简历
- 八股
- 模拟面试
- 投递实习 / 校招
不建议重点学的内容
这些可以跳过或只了解:
- JDBC 深入源码
- SSM 复杂 demo
- MyBatisPlus 大量细节
- 进阶路线全部内容,除非后面有需要
- Dubbo、Netty、ShardingSphere、Zookeeper 暂时不作为主线
- 设计模式可以项目中遇到再补
- 操作系统、计算机网络先看小林 Coding 面试高频部分
- 所有视频不要反复刷
最重要的成果节点
到第 12~16 周,你应该产出这些东西:
- 一个 Java 后端项目:黑马点评改造版
- 一个 AI 应用项目:RAG / Agent / AI Coding 相关
- 一份一页简历
- 一个 GitHub 主页
- 一套四大件八股笔记
- Codetop 前 5 页熟练
- 能完整讲清楚两个项目的技术难点和个人思考
这版路线的核心不是“学完所有东西”,而是尽快形成:基础能力 + 项目能力 + 面试表达能力 + AI 应用差异化。