Java后端开发学习路线

ps:如果这篇帖子对于还在找工作和找实习的你有所帮助,可以关注我,给本贴点赞、评论、收藏。同时不要吝啬您的花花

面试三要素:八股,项目经验,算法

如果三项表现优秀,基本会拿到of,面试前首先要知道需要学习哪些技术栈,这些技术栈是要写进简历里的

技术栈(学习顺序从上到下)

  • Java基础:https://www.bilibili.com/video/BV17F411T7Ao/ (上部) https://www.bilibili.com/video/BV1yW4y1Y7Ms (下部) 其中集合框架底层源码要重点学习,其中GUI(swing,awt包下),如果没时间可以不学。视频中的代码集合框架那一部分多敲几遍,算法中那些集合api很常用,其他代码时间充足,也可以跟着视频敲一下。

  • MySQL:https://www.bilibili.com/video/BV1Kr4y1i7ru/ 其中的主从,读写分离,分库分表代码也是有时间尽量跟着视频敲一遍,知道个大概思路,理解原理,如果着急写项目,原理篇可以直接过,回来再学

  • JavaWeb :https://www.bilibili.com/video/BV1Y7411K7zz 学习JavaWeb之前,尽量先了解一下计网那些协议,请求,响应,可以更加容易的理解视频中的内容。其中的项目可以不做(如果有的话),没有必要,等听完springboot时再做。还有个JSP也是比较老的,了解一下即可。

  • SSM:https://www.bilibili.com/video/BV1Ya411S7aT (Spring,SpringMVC,MyBatis)属于JavaWeb的进阶。掌握Spring,SpringMVC,MyBatis的原理才是最重要的,尤其是前两个。SSM配置文件跟着视频敲一遍就行,理解每部分是干什么的就可以。不需要默写配置文件。如果着急写项目,原理篇可以直接过,回来再学

  • SpringBoot:https://www.bilibili.com/video/BV19K4y1L7MT (这个是2版本,听3的也行) 属于SSM框架的进阶,这部分Thymeleaf了解一下即可(因为不是前后端分离,现阶段企业的项目都是前后端分离)。掌握SpringBoot原理十分重要(自动装配,Bean,依赖注入)这些,如果想要快速做项目找实习,这些可以回来再听。视频里的单元测试代码可以敲敲,项目(如果有的话)还是建议不要敲(因为有Thymeleaf,不是前后端分离)。如果着急写项目,原理篇可以直接过,回来再学。

  • maven:在JavaWeb,SSM,SpringBoot视频中肯定会有一个出现,如果没出现,B站随便找找会用就行

  • Redis: https://www.bilibili.com/video/BV1cr4y1671t/ 学习方式与mysql差不多。 其中的主从,读写分离,分片集群代码也是有时间尽量跟着视频敲一遍,知道个大概思路,理解原理,如果着急写项目,原理篇可以直接过,回来再学

  • 项目(苍穹外卖): https://www.bilibili.com/video/BV1TP411v7v6/ 找不到好的项目可以写这个项目到简历上(很基础),不过推荐还是找知识星球项目写到简历上,这个可以练手。我的毕设也是这个,哈哈哈哈哈哈哈哈哈哈。这个项目推荐敲一遍,理解CRUD。

  • git:B站随便找找会用就行

学习到这里可以简单写一个CRUD的项目,但是凭借这些找实习还不够

  • JVM:https://www.bilibili.com/video/BV1r94y1b7eS 这里开始基本没有什么代码,最多有些命令。这部分原理很重要。
  • JUC:https://www.bilibili.com/video/BV16J411h7Rd/ 这部分原理很重要,学JUC前感觉掌握一下操作系统第一章进程线程还是很重要的,知道什么是锁,CPU上下文切换是什么。这样方便学习JUC

学到这里就可以找日常实习了,常见的八股就是JVM、JUC、集合、MySQL、Redis、Spring原理。做一个稍微好点的项目,准备准备算法。海投,中小厂实习还是能找到的。(大厂日常实习也有希望);如果要找暑期实习(带转正),下面的技术栈也要会。

日常实习全年都招(不招说明不缺人),暑期实习一般在年后就得开始盯着官网了(差不多与春招一起开放)。

例如25届春招(只招25届)和26届暑期实习(只招26届)。

ps:找实习基本都是骑驴找马(尤其是中小厂),不要满足于现状,尽量在大厂实习。要在实习结束前准备好投下一家的打算

  • SpringCloud:https://www.bilibili.com/video/BV1LQ4y127n4/ 里面包含很多(Redis,RabbitMQ,docker,SpringCloud),如果有学过的,可以跳过,至于差不多会用就行

  • 消息队列kafka,RocketMQ二选一,三个最好全会)
  • kafka: https://www.bilibili.com/video/BV1Gp421m7UN/ 掌握消息队列原理很重要
  • RocketMQ: https://www.bilibili.com/video/BV1cf4y157sz/ 掌握消息队列原理很重要
  • RabbitMQ: https://www.bilibili.com/video/BV1mN4y1Z7t9/ 掌握消息队列原理很重要

  • 设计模式:掌握常见的几种,面试有可能会手撕

  • MongoDB:https://www.bilibili.com/video/BV1bJ411x7mq/ 知道与MySQL的区别,了解一下就好。
  • Elasticsearch: https://www.bilibili.com/video/BV1b8411Z7w5 知道用途,了解倒排索引就好。

  • Linux:https://www.bilibili.com/video/BV1n84y1i7td/ 掌握常用的命令就好
  • docker:在springcloud视频中会出现,如果没出现,B站随便找找会用就行

有些公司可能需要shell编程,例如阿里就好多,这个根据时间情况吧,有能力就学一下

  • 操作系统:掌握常见的:线程进程管理,锁机制,内核态用户态(CPU上下文切换),零拷贝,IO,内存管理、磁盘管理
  • 计算机网络:主要是应用层(HTTP),传输层(TCP,UDP),网络层(ip),了解七层结构,每层协议有哪些,三次握手,四次挥手,状态码,DNS这些

总结:学习Java技术栈之前,最好还是了解一些计算机网络和操作系统的知识,理解起来更容易一些

八股

  • javaguide : 结合自己听的课做的笔记,掌握原理,最好都看

  • 小林coding : 这里面主要学操作系统,计算机网络。里面主要看图解Mysql,图解Redis,Java面试题这三个都要看

图解网络与图解系统感觉太深了,感觉有点像考研408的感觉了,面试从没问这么深过。我看了感觉都记不住。如果能理解时间充足,还是掌握一下(计多不压身)。

八股也要多刷牛客,会有很多实习和校招面试题

算法

平台:代码随想录,likou,牛客网,洛谷,acwing

算法可以在学完Java基础时就可以刷了,边听课学技术栈,边刷算法

我刷的是likou,但代码随想录听说也挺好,建议刷一遍

likou上的算法最好有一些基础,起码知道什么是链表,数组,树,图这些数据结构,科班的看一下老师上课讲的ppt就好,非科班上B站找数据结构与算法课挑着听,例如手撕B+树感觉就没必要听了。(也可以看看代码随想录)

刷likou算法最好按照模块刷,例如数组,链表,树,图这样的;也可以按照算法来刷:贪心,动态规划,双指针,二分查找,BFS,DFS这些,切忌从头刷,起码我遇到的没有这么干的,效果不好,接着就可以刷hot100,面试经典150这些。如果时间不够的话,可以直接上hot100和面试150

最后likou刷题数量:我刷了350道,感觉不用再刷新题了。如果没时间,刷hot100,面试150就行了

ps: 实习要刷够hot100和面试150。校招再加上力扣前300道题(非会员题),没做的都做了

likou刷题感觉至少需要250道题目(校招想要冲击大厂)

likou题目,面试会出现原题,所以尽量要多刷,来回刷,要不然容易忘

牛客网上也可以刷算法,likou主要是核心代码模式,牛客网上有的是ACM模式,起码要把牛客网上的输入输出模型做一遍

我之前牛客网笔试算法题,题目用户输入一个数组,使用scanner,likou题目做多了,main方法scanner输入不会了。

剩下的acwing模板题也可以做做

项目经验

最好找知识星球上的项目,复杂点的,最好不要选苍穹外卖,无论是实习还是校招。如果找不到其他项目,做苍穹外卖属于保底行为

另外就是多实习,尽量一直实习,不要停止(3-6个月,尽量不要停下来,尽量找大厂)

简历

  • 个人信息:姓名,年龄,电话,邮箱这些是最重要的,是预备党员和党员的话写上
  • 校园经历:学校(本还是硕,92特殊标记,哪年毕业),专业,打过哪些竞赛(ACM,蓝桥杯国奖很加分),其他非算法竞赛可以凑字,绩点,成绩排名高就写,感觉没人会看这个
  • 实习经历:主要就是介绍在公司干了什么,具体内容分点列举,实习时间也要写上,负责什么也要写上(前端还是后端),实习收获(别写那种套话,要写就写点有用的,除非是凑字,要不然不要写)
  • 技术栈:就是上面列举到的,熟悉掌握,熟悉了解,分点列举。某些可以写的详细一些(Redis熟悉了解主从,读写分离,分片集群这些)
  • 项目经历:跟实习经历差不多。时间可写可不写
  • 个人总结:网上随便找找就好

有博客的,gitee,github开源项目也可以加上,有的也很加分

面试官有些东西你简历上没写也会问:例如操作系统,计算机网络,数据结构与算法。 git,maven虽然不常问,但也是默认会的

总结

面试三要素:八股,项目经验,算法

  • 八股:多看javaguide,小林coding,另外不会的面试题也要自己记录下来。
  • 算法:多总结,面试算法题做不出来直接挂
  • 项目经验:是企业的刚需,可以给公司带来更高的价值。因为八股,算法到公司有些用不上,是为了筛选你,考察你的能力

最后:Java后端开发准备就业是个漫长的过程,都是以年为单位计算的(半年,一年,一年半,两年)

所以希望如果有就业意向,确定Java后端开发。要尽早的开始准备。

鼠鼠末211本非科班转码学习Java不到一年参加秋招,现在只有小米一个of,有一些后悔没有早点准备。如果大二开始准备,现在估计能拿好几个大厂of了。

现在就业对学历要求很高,很多公司卡92。

所以

  • 本科非92的最好保研保92学校或考研考92学校,然后参考下面研究生的规划
  • 本科92的想就业就可以参考下面本科的规划

当然双一流也可以看作2(个人感觉),例如深圳大学,杭州电子科技大学,非常好的普通本科

如果想要Java后端开发就业,本科大学四年规划

  • 大一:尽可量多学习几门语言,C,C++,Java,Python。另外还要掌握数据结构与算法,操作系统,计算机网络。大一主要是能多学点尽量多学一些。多打打算法竞赛(蓝桥杯,ACM),打竞赛结果不重要,过程很重要。顺利通过四六级。剩余时间可以参与一些社团工作。(当然错过影响也不大)
  • 大二:要开始准备好方向。如果是Java后端的话,按照我的学习路线学习,在大二下学期开学时,差不多能找到大厂实习,接着就是实习快结束一个月内找下一家实习(骑驴找马),如果第一段是大厂,后续最好也是大厂
  • 大三:继续找实习,大三下2-3月份就可以投暑期实习(转正的),然后拿一个转正的of
  • 大四:转正of下来的估计8月份,如果转正of不满意,正好赶上秋招多拿几个of

本科阶段过于理想化了,但机会是留给有准备的人,其实哪怕大二暑假准备也不晚,但尽量越早越好

如果想要Java后端开发就业,研究生四年规划:

  • 研0:尽量在考完研或保研后就要开始准备了,考研的大四寒假1月份准备,保研大三暑假7月份没什么事(9月份问题也不大)就可以开始准备了,按照我的学习路线学习。在大四暑假,差不多能找到大厂实习,如果第一段是大厂,后续最好也是大厂
  • 研一:继续找实习
  • 研二:继续找实习,研二下1-3月份就可以投暑期实习(转正的),然后拿一个转正的of
  • 研三:转正of下来的估计8月份,如果转正of不满意,正好赶上秋招多拿几个of

研究生毕竟不能像本科那样水,所以找一个好的导师,能出来实习是十分重要的(dddd)

虽然我没考研也没保研,但我认为什么都不管的导师才是好的导师(事比较少的)

毕竟有很多研究生导师不让出来实习

如果大一或大二(研0)的牛友看到这篇文章,按照这个做的话,相信秋招会拿到好几个大厂ssp,大三(研二)的牛友看到这篇文章,也不晚,校招也会有一个满意的of。

最后祝福牛友25年春招能拿到自己满意的of。欢迎各位牛友在评论区评论。如果有不对的地方,欢迎指正。

ps:如果这篇帖子对于还在找工作和找实习的你有所帮助,可以关注我,给本贴点赞、评论、收藏。同时不要吝啬您的花花

全部评论
我现在大三寒假0基础,似乎太晚了。 但我还是按照楼主的方法试一试,这次尝试或许不是像往常一样的一股脑疯狂行动,结果半途而废,最终一事无成。 我最近阅读了大量有关哲学、心理学和一些方法论的书籍,有相当规模的理论支持着我去学习,这次是有一定把握的。 可能到最后也没学到像楼主所说的全部内容,做到楼主所说的全部事情。 2025/02/09从第一个Java基础开始行动。 在我学习的过程中,在什么时间干了什么也顺便记录到记事本里,看看最后做了多少。 如果最终能照着楼主路线和其他路线走下去的话,那就再好不过了。
13 回复 分享
发布于 02-11 18:47 广东
redis学到第几集可以先去敲苍穹外卖吖,学了好多理论感觉前面都忘完了,想做项目巩固一下
1 回复 分享
发布于 04-19 22:51 浙江
1 回复 分享
发布于 02-24 19:45 陕西
m
1 回复 分享
发布于 01-06 10:23 上海
感谢uu 写的真好 不知道评论怎么这么少
1 回复 分享
发布于 01-05 23:22 陕西
双一流应该是双非吧?不能当92吧
1 回复 分享
发布于 01-05 19:44 山西
怎么在知识星球找项目?小白求解答
点赞 回复 分享
发布于 04-24 10:06 辽宁
读研的时候也要做导师的项目和科研项目,一言难尽
点赞 回复 分享
发布于 04-22 15:01 浙江
[牛泪临近秋招才看到[牛泪]
点赞 回复 分享
发布于 04-12 09:39 天津
大二开始
点赞 回复 分享
发布于 04-10 19:53 辽宁
主播找实习的话八股这种东西重要吗我现在大二下,日常实习是不是什么时候都能投,感觉这个暑假有点没机会了才上微服务,大一光去搞竞赛了,我大二十月份才开始学java的
点赞 回复 分享
发布于 04-06 01:49 重庆
大佬,我研二下了,论文被拒了转投,现在才刚开始,本科做过一些项目但现在全忘完了(做过java的,然后本科当时主攻的前端vue现在也忘了),冲击大厂应该很难,中厂有机会吗,或者需要学哪些可以去个较好的国企(我本人想的是要么去大厂拼一下多赚点,要么国企轻松一些,但工资不太低,毕竟都研究生了,国企拿1个可以吗)
点赞 回复 分享
发布于 03-31 15:44 云南
太强了兄弟,现在就学起来
点赞 回复 分享
发布于 03-31 10:00 上海
大二下开始还来得及吗
点赞 回复 分享
发布于 03-23 19:51 陕西
研一下想找日常实习,现在开始学,不知道来不来得及
点赞 回复 分享
发布于 03-15 11:26 辽宁
佬 请问Javaweb学完 可以直接上苍穹外卖吗,然后是SSM和Spring高级可以吗 后面想写一个Spring框架的轮子项目
点赞 回复 分享
发布于 03-14 10:18 宁夏
感谢大佬分享
点赞 回复 分享
发布于 03-13 18:00 湖北
想问一下大一和大二上学了Javase基础 数据结构与算法做了一两个比赛项目等等 现在开始跟着学习路线走 寒假有机会找到实习吗
点赞 回复 分享
发布于 03-11 20:30 广东
请问一下学习javaweb看黑马的课,有必要看他那个前段的部分吗
点赞 回复 分享
发布于 03-08 10:35 宁夏
这里提到的星球是哪个知识星球啊
点赞 回复 分享
发布于 03-01 19:46 江西

相关推荐

04-29 00:09
已编辑
门头沟学院 前端工程师
1. 先说一下背景    19-23年,某中9遥感;23-26年,本校测绘;也算是”双非“科了    大学期间基本上啥也没做,大概学了测量平差、“这个遥感”、“那个遥感”,分成很多类,实验基本都是在外面测量,组织的实习也是去野外测量(各位都在找暑期找秋招的时候,我们在扛着三脚架和经纬仪戴着草帽测数据),本科就这么过去了...    后面读了个研,研究方向是“那个遥感”中的一类,用的python、传统机器学习那一套(随机森林之类的)...2. 为什么学前端    有点兴趣,相对简单好学,我的时间也决定我只能找前端了。    大二那会有个课叫“地理信息系统”,实验课用WebGIS那一套,写了一个简单的网页,做了一点空间分析    研一有个课叫“三维信息可视化”,主要讲摄影测量、激光雷达那些;在准备作业的时候,突发奇想,把网页元素按照层级提取出来,计算面积,做了一个点云,生成三维模型,贴个图,效果大概类似(本来打算放个图,结果找不到了),后面感觉太简单,就没弄了;当时大作业准备的给我们学院拍一些照片,用摄影测量的方法(其实就是现成的软件,点点点)重建一个三维模型,加了一些交互效果,老师反馈还不错;只用了三件套,写报告的时候其他组员把上面什么git、docker都加进去了,反正老师不会查,多堆一点技术,显得专业一点3. 后面怎么学的    研二开始陆陆续续抽空学前端,因为身边没转码的同学,所以都是在自学。其实我一直对自己学的符不符合公司招前端的正常要求存疑,但除了看一些视频、官网、书、别人写的项目,也没啥更好的选择了,不知道目标在哪,只能按照当前的节奏走一步看一步;刚入门是在B站看的三件套和尚硅谷的Vue,写了个商城和后台管理系统,用py写了个后端(写的真的烂,数据库也没有,用个json存的数据);后面又学了一点java,跟着写了个苍穹外卖...,也认识了一些后端的东西,没有目标,瞎学,对数据库、redis、消息队列、微服务、docker有个大概的印象,面试的时候如果能聊到,可能会加点分...,比如字节三面面试官问MinIO相关的,我就多少答了一点 4. 准备面试:    今年1月开始准备的,首先是项目,前面那俩商城和管理系统还是算了吧,重新写个...。网上找了一个网盘的项目,看了一眼流程和大概用了哪些库,然后把它关了,按照自己的想法写,他用elementplus我用acro design,他用本地目录存文件我用minio,洋洋洒洒写了将近20天,踩了一些坑,后面优化了一下分包,nginx用http2,租服务器配置域名,上线,算是一整套跑通了,这个就差不多了。    第二个是今年字节青训营的埋点项目,组内4个人,也花了快一个月的时间做,做的还凑合吧感觉(后端py写的,别提什么进阶要求高并发高可用,不过夹了点私货,自己写的一个工具,用起来还不错),时间已经来到3月中,就包装了一下,开始准备了。    准备面试的话,是不是忘了什么。没错,到现在为止,八股没专门背过,力扣刷了个位数...    后面开始挤时间狂补,八股大概都过了几遍,力扣快200,项目再包装了一下,就开始投了。    整体来说还行,基本上投了一两天就能约面,问的大多是复习过的。4.13投腾讯、4.14投字节,真的不知天高地厚...都说字节面评差会让冷静很久。虽然刚开始面的几次都过了,但还是觉得风险太高,后面又投了快手、美团、TME、B站,运气还不错,到写这个动态为止,面的9次技术面都过了(图1),(我工程化方面很弱,只做了简单的优化,经不起深挖,但好在面试官都基本没问,真神奇)。目前也是收到了两个offer,腾讯PCG和字节抖音电商。这俩可能更倾向于字节,其他还在流程的就不考虑了(一直听说美团体验好,29号体验一把)。    找暑期实习就告一段落了,15号首面腾讯,27号收到第一个offer,很知足了。    面试官可能会好奇为什么转码学前端,所以我就把那两个WebGIS实验和三维模型放到了自我介绍中,省的他们再问...。因为我没实习,所以只能揪着八股和项目问,感觉有些难为面试官了...    学院的实习就业分享会,基本每年都有,同学们会分享一些经历,比如小米、momenta以及其他不知名的小公司的实习,岗位一般是算法(很少)或产品经理(多),感觉腾讯字节和这些企业还是有一定gap的,期待在明年分享会上露一手(,大佬们可能都习以为常了,打工人而已,但在我们身边应该算很难得了)5. 一点感想    1. 转码很爽    2. 这些面试检验了我一直以来所学的东西,是可以像科班那样去找一个正常工作的,已经很知足了,不容易    3. 面的这些厂都不错,真的都想去试试啊,很羡慕那些有三五段实习的同学,经验丰富、能力强。算了没机会了,就让它成为一个遗憾吧...,不然没点深刻的记忆,老了就忘了    4.  希望实习可以多认识一些朋友    5.  面这么多次,只有腾讯的HR面是个小姐姐,其余的全是男的,真就这么绝缘吗?------------------------------------------------------------------车到山前自有路,没有就掘它开路,就这样了,溜了溜了#经验# #暑期# #转码# #前端#
点赞 评论 收藏
分享
评论
246
1132
分享

创作者周榜

更多
牛客网
牛客企业服务