Java学习路线
前言
我是谁?
26届本科生,在秋招前已拿腾讯、字节 、淘天、美团、蚂蚁、小红书、得物、拼多多等大厂offer,四段大厂实习经历
姊妹篇
【大三的我是如何拿下三段大厂实习?计算机专业最危险的信息差,被学校骗了四年?!错过这些毕业即失业?】
https://www.bilibili.com/video/BV1Z1XQYmE1h
希望大家看本视频前,能先去看我的上一期视频,里面包含的内容非常干货,视频很长,但质量也很高,视频好不好可以先去看评论区反响。你们99%的问题都能在我的上一期视频和这一期视频找到答案,我希望你们能先耐心把这两个视频看完,如果真的还没答案,再来提问,这才是有效提问,而不是到处问,却不行动,这种人,我不欢迎。
大家一定要先明确目标,打破信息差,再去行动,绝对是10倍的效率!
本期内容
主要是讲Java的一整个生态的学习路线,可以说,一整个Java该学什么,从0基础到进大厂需要掌握的东西,看本视频就够了,这都是我个人经验的倾囊相授。当然,对于其它语言而言,本视频里的“算法”、“项目”都是通用的,也可以看。
我不会说这是全网最好的路线,那样博人眼球太夸张了,但我敢说这一定是经过实践的、我结合我的实际经历+我对我走过的弯路进行改良后得到的一条学习路线。
本期内容只讲路线,至于学了过后会忘记,一天该学多久等这些问题,见我上期视频,都有解答!
路线
如何学
入门的话推荐主要看视频学。
入门路线
- JavaSE - 建议20 - 25天学完 - 重要程度5.0 - 相当于基础,主要学Java基本语法


https://www.bilibili.com/video/BV17F411T7Ao/
https://www.bilibili.com/video/BV1yW4y1Y7Ms/
重点:数据类型、面向对象、集合、字符串、高级集合、Stream流、异常、多线程、反射
代码稍微写点就行,在前期熟悉语法,代码格式规范,后面熟悉了之后就不怎么需要写代码
- MySQL - 建议4 - 5天学完 - 重要程度5.0 - 八股四大件之一,面试八股重灾区。

https://www.bilibili.com/video/BV1Kr4y1i7ru/
重点:SQL基础、事务、索引、SQL优化、锁、InnoDB存储引擎、日志、主从复制、分库分表、读写分离
没有代码,不用敲代码。
- JDBC - 建议0.5天学完 - 重要程度2.0 - 主要是把MySQL和Java结合起来,如何用Java操作MySQL,但是已被框架封装,了解即可

https://www.bilibili.com/video/BV1s3411K7jH/
稍微跟着敲一点点代码即可,不怎么重要,但其实是底层原理,还是需要了解的。
-
JavaWeb - 建议3-4天学完 - 重要程度3.8 - 初步接触框架,感受Java能干啥

https://www.bilibili.com/video/BV1m84y1w7Tb/
前端部分非常快速的过一遍,不是重点,可以跳着看,代码不用敲。
maven稍微了解即可,会用就行,不用死磕。
Web部分需要跟着敲下代码,MySQL直接全跳过,之前学了的,后面的除了maven高级部分基本都是重点,都可以跟着敲敲。
-
SSM(Spring、SpringMVC、Mybatis) - 时间看个人情况 - 重要程度4.0 - 三大框架,但面试不咋问,现在也不会单独用,都用SpringBoot整合这些东西了,但属于底层基础,SpringBoot只是整合,其底层还是这三大框架。
黑马路线:

https://www.bilibili.com/video/BV1Fi4y1S7ix/
全篇重点,是否跟着敲代码看自己的掌握程度。这里面的m其实是maven,因为黑马的JavaWeb中已经简单介绍了Mybatis了。
动力节点路线:



https://www.bilibili.com/video/BV1JP4y1Z73S/
https://www.bilibili.com/video/BV1Ft4y1g7Fb/
https://www.bilibili.com/video/BV1sC411L76f
全篇重点,是否跟着敲代码看自己的掌握程度。
- Git - 建议1-2天学完 - 重要程度4.3 - 全世界都在用的代码管理工具,企业必用,但面试不问,因为已经默认你会这项技能了。

https://www.bilibili.com/video/BV1pX4y1S7Dq/
再结合菜鸟教程里的Git教程一起学习:https://www.runoob.com/git/git-tutorial.html
一定一定要动手实践,这是最需要你实践的一集,本地,远程仓库如何搞,发生冲突如何解决等等这些,一定要实践。
- linux基本命令 - 建议1-2天学完 - 重要程度4.3 - 全世界都在用的操作系统linux,熟悉基本命令就行,企业里大概率是能用上的,查日志啥的基本都是需要登进linux机器上进行操作。

https://www.bilibili.com/video/BV1cq421w72c/
再结合菜鸟教程里的Linux教程一起学习:https://www.runoob.com/linux/linux-tutorial.html
一定一定要动手实践,这是第二需要你实践的一集。
- SpringBoot - 建议4-5天学完 - 重要程度4.2 - 现在最主流的框架,但面试问的相对较少,但一定得会。

https://www.bilibili.com/video/BV15b4y1a7yG/
没啥重点非重点之分,基本上就是学如何用SpringBoot框架做配置,结合自己情况决定是否跟敲代码。
版本也没啥需要关注的点,SpringBoot2和SpringBoot3没啥区别,底层是差不多的。
- Redis - 建议8-10天学完 - 重要程度5.0 - 八股四大件之一,面试八股重灾区。

https://www.bilibili.com/video/BV1cr4y1671t/
全篇重点,打起十二分的精神学习,里面包含了你的第一个项目——黑马点评,Java最好的入门项目,没有之一,你将使用你之前所学的全部知识完整的写一个项目,我当初4天就学完了,让人欲罢不能、回味无穷的课程。代码根据自己情况决定跟不跟敲,时间来得及的话,非常推荐跟敲一遍。
- SpringCloud - 建议3-4天学完 - 重要程度4.4 - 现在非常流行的微服务,但面试问的相对较少。

https://www.bilibili.com/video/BV1LQ4y127n4/
这里划非重点:p42-p142都可以跳过,内含docker、MQ、ES三部分。
非重点之外的都要看看,代码根据自己情况决定跟不跟敲,不是很有必要跟。
- RocketMQ - 建议1-2天学完 - 重要程度4.9 - 除八股四大件之外的最重要的点,和Kafka之间挑一个学就行,我学的是RockeMQ。

https://www.bilibili.com/video/BV1AU4y157LX/
全篇重点,时间充足的话建议跟敲代码
- JVM - 建议5-6天学完 - 重要程度5.0 - 八股四大件之一,面试八股重灾区。

https://www.bilibili.com/video/BV1yE411Z7AP/
全篇重点,时间 充足的话建议跟敲代码
- JUC - 建议8-9天学完 - 重要程度5.0 - 八股四大件之一,面试八股重灾区。

https://www.bilibili.com/video/BV16J411h7Rd/
全篇重点,时间充足的话建议跟敲代码
总结:
至此,Java基本入门,按照我建议的计划的话,大概花费2个月的时间。此时已经具备找实习的基本条件(只是具备基本条件,能不能找得到还得看你学的程度怎么样,基础打得牢不牢),当然,还需要有两个项目。
其次,可以看到,我大部分情况下,都没说一定要跟敲代码,因为我觉得代码你敲了还是要忘记的,而且框架的代码基本没什么用,熟悉底层原理、基本使用就够了。代码我希望你能在你的项目中再好好锻炼。
进阶路线
- Spring高级

https://www.bilibili.com/video/BV1P44y1N7QG/
- Dubbo

https://www.bilibili.com/video/BV1VE411q7dX/
- 操作系统
- 计算机网络
《网络是怎样连接的》——户根勤
https://xiaolincoding.com/network/
- 设计模式

https://www.bilibili.com/video/BV1Np4y1z7BU/
我整理的:https://github.com/Elejiang/design-pattern
- Netty

https://www.bilibili.com/video/BV1py4y1E7oA/
- ShardingSphere

https://www.bilibili.com/video/BV1ta411g7Jf/
- Zookeeper

https://www.bilibili.com/video/BV1M741137qY/
至此,基本上Java技术就学完了,剩下的就是深入
八股
是什么?
即面试的时候,面试官问你的上面我们学的知识,因为问题和回答都较为死板,类似八股取士,我们叫它八股,但是,实际上现在很多问题,都是非常灵活的,并且即使是常见八股,你的回答也能和别人不一样,能体现出你的思考,也可以拉开和别人的差距,所以不要觉得死背八股就能过这一关。八股这一说法更多是调侃,而不是真八股。
怎么做?
这块我极不建议大家死背八股。
我这里建议大家“深度+记录”结合,来处理八股这块。即现在市面上有很多八股来源,对这些八股进行深度学习,同时记录下自己的思考。
八股来源:
-
小林Coing - https://xiaolincoding.com/
-
JavaGuide - https://javaguide.cn/
-
pdai - https://www.pdai.tech/
-
博客园 - https://www.cnblogs.com/
-
腾讯云开发社区 - https://cloud.tencent.com/developer
-
阿里云开发社区 - https://developer.aliyun.com/
-
稀土掘金 - https://juejin.cn/
-
CSDN - https://www.csdn.net/
这里只是简单列举,你们肯定在学习过程中还会接触到其它八股来源,都可以将其保留下来。然后广度的获取知识。
书籍推荐:
-
《深入理解Java虚拟机-JVM高级特性与最佳实践》- 4.9
-
《MySQL技术内幕-InnoDB存储引擎》- 4.9
-
《Java并发编程的艺术》- 4.8
-
《码农翻身》- 4.8
-
《网络是怎样连接的》- 4.8
-
《亿级流量系统架构设计与实战》- 5.0
电子纸质都可以,这都不是重点。
算法
是什么?
就是写题,可能出现在面试和笔试中,对于面试,是核心代码模式(非绝对);对于笔试,一定是ACM模式。
核心代码模式,就是直接实现函数就行;ACM模式,就是需要处理输入输出,也就是Java里面的Scanner和System.out.println()这些
一般来说,都是在非IDE的环境下写题,也就是说你是不知道哪个类有哪些方法的,所以需要熟悉我们Java中的API
刷什么?
算法只需要刷力扣平台(https://leetcode.cn/studyplan/)上的“hot100”、“LeetCode 75”、“面试经典150”、“高频SQL50题(基础版)”即可!




相信我,刷完这四个,算法这块就过关了,如果你觉得不够,可以再刷个“剑指offer”,我已经帮大家整理好题单了:https://leetcode.cn/problem-list/QQcuyKam/
对于ACM模式,我建议大家再熟悉核心代码模式后,直接去“牛客网”上直接找真题练习(https://www.nowcoder.com/exam/company),因为我目前遇过所有的大厂笔试,都是在“牛客网”上做题的