大厂SSP的Java学习路线
现在互联网环境这么差,Java还能学吗? 学Java还能找到工作吗?
大家好呀, 我是程序员回家养猪, 一个专升本, 三段实习经历拿下大厂SSP offer的程序员博主.
关于我的个人经历, 之前文章有聊过了。
虽然现在Java开发的行情确实比以前要差很多,但是差并不是光Java开发差,是所有行业都变差了。综合来看,Java后端开发依旧是性价比非常高的一个方向。
那么这一期来聊聊Java后端开发的学习路线吧。
首先要明确你的目标是什么,你是要进大厂还是要进中厂?还是要进小厂?
大厂有大厂的技术要求,小厂有小厂的技术要求。
进大厂所需要学的知识肯定是和进小厂不一样的。进大厂的学习路线肯定也是和进小厂不一样的。
特点
这一篇学习路线和其他学习路线不太一样, 主要有以下特点
根据目标定计划
- 小厂(入门阶段)怎么学,中厂(进阶阶段)怎么学,大厂(高级阶段)怎么学
快,短而精, 去掉了一些非必须的知识
- 短并不意味着要跳着学, 学习曲线十分平滑, 不会学的很难受
详细到知识点, 哪些知识点是哪个阶段的重点
每个点都会给出学习建议
必看的视频推荐, 项目推荐 (都是精品中的精品)
- 一条线, 不会告诉你既可以学这个又可以学那个, 既可以看这个又可以看那个.
- 不会给初学者搞晕, 只给你一条路径, 一条线学下去就行了
b站也有学习路线讲解视频
【大厂SSP的Java学习路线,零基础,分阶段,极简的自学编程指南,全网最全面最贴心】 https://www.bilibili.com/video/BV1ExmhYVERA/?share_source=copy_web&vd_source=dbae968b96c316f9084e2b52adeabb5d
小厂 - Java后端学习路线
重点与目标
- 基本的后端crud开发能力
- redis, mq等中间件的基本使用
- 简单八股文
学习路线

完整的学习路线思维导图太大了, 截图放不下. 文章末尾会放完整的学习路线思维导图和编程大礼包的领取方式, 直接领取即可, 都是免费的.
笔记工具
- 本地笔记: typora
- 云笔记: 语雀
JavaSE
- 必学
- 知识点
- 基本语法
- 面向对象
- 常用工具类
- 集合与泛型
- 异常处理
- 学习建议
- 必学知识, 多写代码, 多写案例
- 理解编程的基本语法, 理解面向对象的基本思想
- 知识点
- 了解
- 知识点
- IO流
- 多线程
- 注解
- 反射
- java8新特性
- 学习建议
- 了解即可,知道有这个东西,知道干啥用的即可
- 需要用的时候再查
- 知识点
- 推荐课程
MySQL
- 知识点
- 表操作DDL
- 增删改DML
- 查询
- 单表查询
- 复杂查询
- 多表查询
- 常用函数
- 约束
- 事务
- 推荐课程
- 学习建议
- 视频不必全部看完, 只学基础篇即可.
- 非常重要, 基本的crud和事务一定要学明白, 多敲多写
后端开发
知识点
- 了解前端
- 构建与包管理工具: maven
- JavaWeb
- ajax, json, xml
- Servlet
- Filter
- Cookie
- Session
- Springboot
- Spring
- IOC
- AOP
- 事务相关
- 常考八股
- SpringMVC
- MVC
- 注解使用, 请求响应处理
- Restful
- 拦截器
- 整合其他框架
- MyBatis
- CRUD
- 分页查询
- 多表查询
- 动态sql
- Mybatis plus
- MyBatis
- Spring
学习建议
- 后端最核心的课程, 干活必用的工具
推荐课程
- 黑马程序员JavaWeb开发教程
- https://www.bilibili.com/video/BV1m84y1w7Tb/?spm_id_from=333.337.search-card.all.click&vd_source=42db8244c1ec9b601d4410f49b3f3477
项目
瑞吉外卖
- SpringBoot+Mybatis的crud项目
- 版本管理工具 - git
- redis
- linux
- nginx
推荐课程
学习建议
- 一定要动手敲代码, 解决开发中的问题
- 学习项目搭建, 开发, 部署的整个流程
- 学到这里恭喜你已经具备了企业开发的基本能力。这时候其实可以尝试找一个mini厂去实习了
版本管理工具
git
- 学习建议
- 必学, 会用即可, 不必深入学习
计算机基础
数据结构
- 线性表/数组
- 链表
算法
- 排序
- 冒泡排序
- 查找
- 二分查找
设计模式
- 单例
- 工厂
学习建议
- 小厂对计算机基础考察很少
- 只需要学习基本的就够用了
中间件
Redis
- 知识点
- 基本命令
- redis基础数据结构
- 缓存
- 缓存击穿
- 缓存穿透
- 缓存雪崩
- 淘汰机制与持久化策略
- 缓存与数据库一致性的问题
- 推荐课程
- 学习建议
- 视频只看基础篇和实战篇即可
- 面试重点, 一定要学明白, 想明白
MQ - RabbitMQ
知识点
- 基本使用
- 解耦, 异步, 削峰
推荐课程
学习建议
- 视频不必全部看完, 看标记知识点, 基本会用即可
运维相关
- linux
- 基本命令
- 会看日志
- vim使用
八股文
- ConcurrentHashMap
- Spring系列八股文
- MySQL, Redis, MQ简单八股文
学习建议
- 面试常考内容, 对入门阶段的同学要求不会很高, 常见的八股文能说出来即可
中厂 - Java后端学习路线
重点与目标
- mysql, redis, mq等中间件高级篇
- jvm juc与常见八股文的学习
- 基本的计算机基础知识
- 简单算法题
学习路线

完整的学习路线思维导图太大了, 截图放不下. 文章末尾会放完整的学习路线思维导图和编程大礼包的领取方式, 直接领取即可, 都是免费的.
前置知识
- 必须先确保自己学完了 小厂(入门)-Java学习路线
JavaSE
- 多线程
- java8新特性
- 反射
MySQL
知识点
- 事务
- 存储引擎
- 索引
- SQL优化
推荐课程
- 黑马程序员 MySQL (基础篇)
- https://www.bilibili.com/video/BV1Kr4y1i7ru/?spm_id_from=333.999.0.0&vd_source=42db8244c1ec9b601d4410f49b3f3477
学习建议
- 视频从进阶篇开始学完标记为2的知识点即可
- 非常重要, 面试的高频考点
中间件
Redis
- 知识点
- 缓存
- 缓存击穿
- 缓存穿透
- 缓存雪崩
- 分布式锁
- 分布式会话
- 缓存与数据库一致性的问题
- 缓存
- 推荐课程
- 学习建议
- 视频只看实战篇与高级篇即可
- 面试重点, 一定要学明白, 想明白
MQ
RabbitMQ
- 消息的可靠性
- 死信队列/延迟队列/惰性队列/...
RocketMQ
- 选学
Kafka
- 选学
推荐课程
Nginx
- 了解即可, 不必太深入学习
项目
黑马点评redis (实战篇与高级篇)
学习建议
- 黑马点评不仅是讲redis的课程, 而且是极好的项目
- 视频只看实战篇与高级篇即可, 学会了项目亮点就有了
- stream相关可以直接用MQ代替, 不必完全按照课程写
计算机基础
数据结构
- 栈
- 队列
- 哈希表
算法
- 排序
- 堆排序
- 归并排序
- 快速排序
- 查找
- 二分查找
- 分治
- 贪心
- 回溯
- 搜索
- bfs
- dfs
操作系统
- 基础知识
- 用户态/内核态
- 系统调用, 中断, 异常, 陷入
- 进程与线程
- 进程与线程比较
- 进程三种状态
- 进程通信
- 进程调度算法
- 同步与互斥
- 死锁
计算机网络
- 网络分层
- OSI分层
- TCP/IP分层
- 数据链路层
- MAC地址
- ARP协议
- 网络层
- IP相关
- 传输层
- UDP特点
- TCP
- 三次握手, 四次挥手
- 可靠传输
- 流量控制
- 拥塞控制
- 应用层
- DNS
- HTTP
- FTP
计算机组成原理
- 二进制
- 进制转换
- 源码反码补码
设计模式
- 单例
- 工厂
推荐资料
- 小林coding
- https://xiaolincoding.com/
Java底层
JVM
- 内存结构
- 垃圾回收
- 类加载
JUC
- 锁
- synchronized
- ReentrantLock
- CAS
- AQS
- 线程池
- 并发工具类
- ConcurrentHashMap
- ...
运维相关
linux
- vim使用
- shell脚本
八股文
MySQL相关八股文
Redis相关八股文
MQ相关八股文
并发与锁相关八股文
学习建议
- 面试常考内容, 一定要熟练掌握
- 不要死记硬背, 理解记忆, 要想明白在项目中是怎么用的
推荐资料
- 小林coding
- javaguide
算法题
学习算法思想: 代码随想录
面试常考题: code top
学习建议
- 这个阶段算法题考的比较基础, 不必学太深入
- 建议每天刷一两道简单算法题, 了解基本的算法思想, 学会写基本算法题即可
大厂 - Java后端学习路线

由于目前文章太长了, 所以大厂的Java学习路线会放在下一期. 敬请期待吧.
编程大礼包和资料
关注公众号: 程序员回家养猪
发送: "Java后端开发学习路线"
即可领取全部学习路线思维导图(pdf版和xmind版)和编程大礼包
编程大礼包内含typora(pojie版), idea(pojie版), jdk, mysql等常用安装包.
有些同学可能在想领个资料为什么这么麻烦, 因为都是个人原创的学习路线. 创作, 搜集资料十分不易, 所以还是希望如果对你有帮助的话能支持一下.
大厂SSP的Java学习路线的更多相关文章
- 【强烈推荐】可能是最适合你的 Java 学习路线和方法
如遇链接无法打开,建议使用 https://github.com/Snailclimb/JavaGuide/blob/master/docs/questions/java-learning-path- ...
- 分享篇——我的Java学习路线
虽然之前我是开发出身,但是我学习的语言是Objective-c,这个语言使用起来范围比较窄,对于自动化学习来说也是无用武之地,所以我自己学习了Java,对于一个有开发经验的人来说学习一门新语言相对来说 ...
- java学习路线(好资源大家分享)
对于入门java将近两年的时间,曾经迷惘过,一直想知道java的具体学习路线,看过了许许多多的java经验分享的帖子,评论,以及其他各种培训机构所谓的学习路线,发现没有一个符合我个人需求的学习路线,根 ...
- 最新java学习路线:含阶段性java视频教程完整版
最新java学习路线:带阶段性java视频教程版本 第一阶段:Java基础 学习目标: 掌握基本语法.面向对象.常用类.正则.集合.Io流.多线程.Nio.网络编程.JDK新特性.函数式编程 知识点细 ...
- 一份最中肯的Java学习路线+资源分享(拒绝傻逼式分享)
这是一篇针对Java初学者,或者说在Java学习路线上出了一些问题(不知道该学什么.不知道整体的学习路线是什么样的) 第一步:Java基础(一个月左右) 推荐视频: 下面的是黑马内部视频,我比较推荐的 ...
- 【Todo】Java学习路线(方向指导)
在网上搜了下Java学习路线(关键词:学习,因为众所周知,实践出牛人,在平时工作不怎么深入的情况下,才强调学习的方向的重要性 ^_^) 发现下面知乎这个回答写的真好.mark如下: https://w ...
- java学习路线推荐,希望能帮到你
很多小白刚开始学习java时,肯定迷惘过,因为对java基本是啥也不懂的,一直想知道java的具体学习路线,我曾经也看了许许多多的java经验分享的帖子,评论,以及其他各种培训机构所谓的学习路线,特别 ...
- Java学习路线|转至CodeSheep
Java学习路线 基础知识 . 基本语法 基本网络知识:tcp/ip http/https 工具方面 . 操作系统:linux (CentOS\Ubuntu\Fe..) 代码管理:svn/git 持续 ...
- 从入门到精通,Java学习路线导航
引言最近也有很多人来向我"请教",他们大都是一些刚入门的新手,还不了解这个行业,也不知道从何学起,开始的时候非常迷茫,实在是每天回复很多人也很麻烦,所以在这里统一作个回复吧. Ja ...
- 从入门到精通,Java学习路线导航(附学习资源)
原文链接:https://blog.csdn.net/qq_42453117/article/details/100655512 引言 最近也有很多人来向我"请教",他们大都是一些 ...
随机推荐
- PG数据库导致断电/重启无法正常启动问题排查
PG数据库导致断电/重启无法正常启动问题排查 一.问题 数据库断电后,启动PG数据库后无法正常启动,报"psql: could not connect to server: No such ...
- 设计模式 | 中介者模式/调停者模式(Mediator)
定义: 用一个中介对象来封装以系列的对象交互.中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地变化他们之间的交互. 结构:(书中图,侵删) 一个抽象中介者 若干具体中介者 一个抽象 ...
- C语言浮点数转字符串实现函数
C语言浮点数转字符串可用库函数sprintf,此处为编写的简单函数. 小数部分最多显示六位. pOut:输出字符串缓冲区 f:浮点数值 isize:输出字符串缓冲区大小 char * Funftoa( ...
- SSH 安全机制 及常见问题
常见问题: ssh_dispatch_run_fatal: Connection to {your_ip} port 22: invalid argument ssh -oKexAlgorithms= ...
- [Panzura] identify user operations(copy, open, read ... ) in audit log
应该属于sequence classificagtion 问题 https://monkeylearn.com/text-classification/ https://machinelearning ...
- ubuntu 20.04安装GCC G++ 6.2,支持c++ 14
1. 下载源码包 wget http://ftp.gnu.org/gnu/gcc/gcc-6.2.0/gcc-6.2.0.tar.bz2 2. 解压 tar jxf gcc-6.2.0.tar.bz2 ...
- MRO, mixin的解读
本文试着将python中类继承中方法解析顺序MRO(method resolution order)和mixin梳理清楚 先MARK 类的继承中,super()的使用还是蛮多讲究的,因为看pytorc ...
- Angular 18+ 高级教程 – 学以致用
前言 读这么多原理,到底为了什么?真实项目中真的会用得到吗? 你正在疑惑 "知识的力量" 吗? 本篇会给一个非常非常好的案例,让你感悟 -- 知识如何用于实战. 记住,我的目的是让 ...
- Angular Material 18+ 高级教程 – Get Started
前言 本编是 Angular Material 教程的开篇,我先介绍一下这个教程. 首先,Angular Material 教程不会像 Angular 教程那么注重原理,也很少会逛源码. 所以,如果你 ...
- Qt表格入门
摘要 表格作为数据展示的界面,会在很多场景下使用.Qt为我们提供了使用简单方便和扩展性强的表格视图,这里做一个简单的入门整理. 个人能力有限,有错误欢迎留言指正,如果你有更好的方法,也 ...