90.9%面试通过率的Java学习路线
看到很多牛油询问学习路线,这两天整理了一下。
简单总结就是技术学的要深,不能只背八股,源码必须看。
面试技巧
1、个人觉得最重要的是表达能力,不管是自我介绍、还是项目/实习介绍,以及回答各种问题时,表达一定要有条理性,不要想到什么答什么,可以先和面试官说,"我先想一下/整理一下思路",然后再回答。因为面试通过,对方大概率是要和你做同事的,如果表达能力都不够,那么也没有人愿意和你一起工作。
2、对于自我介绍和项目/实习介绍,自己面试前需要整理出一套话术,简单背一下,这样在面试介绍时,能够有条理、顺畅的讲下来,对方也能够听懂你在说什么,对面试也算是一个加分项吧。
3、自我介绍:不要念简历,简单说一下学历背景、荣誉奖项、有哪些公司的实习即可(我自我介绍基本只有1分钟)
4、项目/实习介绍:美团四大名著《金字塔原理》,有兴趣的可以简单看一下。介绍项目/实习时,可以层层递进的讲,这样更容易使对方理解。其次,建议面试前总结出你项目/实习的难点,因为大部分面试官都会问你项目/实习中遇到过哪些困难,或者说你做的东西都哪些难点,不要让对方觉得你做的东西很简单,没含金量。
技术栈学习
1、Java基础:B站hsp,个人感觉是讲的最细的了,缺点就是时间太长,有时间的可以一点一点刷,我当时全刷完了(里边的项目其实可以不做,提升并不大)。https://www.bilibili.com/video/BV1fh411y7R8/
2、JavaWeb:尚硅谷新版JavaWeb,没有web基础的看着可能比较痛苦(我之前学过点javaweb以及ssm,没有web基础的可以先看尚硅谷老版javaweb,不过里边很多技术太老了),但是看完后,对于后续框架的学习帮助是很大的,中间手写ioc以及aop是精华,建议好好学。https://www.bilibili.com/video/BV1AS4y177xJ/
3、SSM:尚硅谷,黑马的我以前也看过,不过自己觉得尚硅谷这个挺好的。https://www.bilibili.com/video/BV1Ya411S7aT/
4、SpringBoot:尚硅谷雷神的教程,全程源码讲解,很硬核但是看着也很痛苦,如果能坚持看下来,对于SpringBoot的一定会有很深刻的理解(但是面试问的最多的还是自动装配的一些内容)https://www.bilibili.com/video/BV19K4y1L7MT/
5、RabbitMQ:学的黑马的,RabbitMQ其实可以不学,可以直接学kafka。https://www.bilibili.com/video/BV1mN4y1Z7t9/
6、kafka:推荐尚硅谷的,也是源码讲解,看完后对于kafka一定会有很深的理解,对面试帮助也挺大的,因为kafka我觉得是面试时比较重要的一个点。https://www.bilibili.com/video/BV1Gp421m7UN/
7、Redis:黑马的Redis教程封神。但是我看大部分人只看了前一半,其实我觉得后边对于数据结构、网络模型、以及redis源码的讲解是很重要的(面试时经常被问,redis在面试中也是很重要的,建议全部看完)https://www.bilibili.com/video/BV1cr4y1671t/
___________
看完以上部分,其实就可以开始做个项目找实习了,JUC、JVM这些,找日常实习时,背背八股就行了,如果有时间就继续学
8、SpringCloud:黑马SpringCloud,里边包括了微服务、Docker、MQ、ES等各种组件的内容,以及nacos、sentinel源码讲解(我全刷完了)。个人感觉微服务这一套,知道啥是微服务、会cap、分布式事务、限流的几种算法、学一个rpc框架就够了(feign在公司里根本没人用),不过有时间可以全看,没坏处。https://www.bilibili.com/video/BV1LQ4y127n4/
9、JUC:黑马的juc讲的也挺好的,强烈建议好好学学,里边针对Java的锁,讲的挺好的(面试时必问,每次讲锁我都能讲个10多分钟)。建议讲源码的部分好好看。https://www.bilibili.com/video/BV16J411h7Rd/
10、JVM:黑马JVM,个人感觉gc那部分讲的一般般,其他还行,不过没看过其他教程,感觉这个够了也,剩下就是自己面试以及平时学习总结的JVM知识了。https://www.bilibili.com/video/BV1Dz4y1A7FB/
11、Netty:也是黑马,不过netty如果简历不写,其实没人问,但是学Netty对自己帮助还是挺大的。比如epoll这种网络模型,问的还是挺多的。https://www.bilibili.com/video/BV1py4y1E7oA/
12、git、linux、docker这些简单学学会用就行
以上是我秋招前学习的全部内容,基本上所有内容,我都是一集不落的全刷了,自己都跟着视频敲了一遍代码,像redis集群搭建啥的也跟着做了一遍。个人认为最重要的是redis+kafka,建议好好学,如果java厂的话,juc的锁源码建议都看看,也很重要。
八股
1、小林coding:着重看计网、Mysql(从实习到秋招,我看了应该有6、7遍,计网东西确实多,但我秋招问计网的并不多)。OS我只看过2遍(问的不多,不过腾讯二面面了5小时,把操作系统从头问道尾,后悔没多看几遍)。Redis看了一遍(Redis自己基本都是通过黑马redis自己记得笔记复习)
2、JavaGuide:只看了Java部分,以及计网、OS(这两个个人感觉适合面试前突击复习,基本2小时就能看完)
3、自己平时学习时记的笔记,其实自己八股复习大部分都是基于自己笔记进行复习的,平时面试遇到的问题都会补充下来,自己感觉足够了
4、场景题,我没有刻意的去学,感觉更多的是实践吧,实习多了,很多场景题自然而然就会了,实习时,多看看组内业务架构,我很多都是参考这个回答的
5、其他的话,看了极客时间Mysql45讲(不过没看完),网上各种技术文章杂七杂八的
算法
自己之前刷过acwing基础+提高。代码随想录刷过一遍,感觉太简单了,适合0基础的看,有基础的刷这个没啥意义。力扣的话,hot100多刷几遍,面试确实出的比较多(不过感觉刷多了,很多题都不会做了,只会背),平时做做每日一题,打打周赛,保持手感即可。秋招笔试,基本上都能做70/100这样,简单的可以ak
#Java##学习路线#