双非本科,逆袭中大厂的 Java 学习路线

news/2024/9/20 4:02:32/ 标签: java, 学习, 面试, 程序人生

从零基础入门 Java,到最后秋招上岸,笔者也是花费了不少的经历,也走了很多弯路。这一篇文章会记录下真正有用学习路线。

为什么要强调真正有用?网上的很多所谓从入门到求职,推荐的路线都超级长,零基础的同学,想要学完然后去找工作,几乎不可能。看了就直接劝退了。比如有些所谓的老师,让一个连代码都没敲几行的同学,去学 Spring 源码,这不是瞎扯嘛?

废话不多说,直接进入正题。我说的路线是面向 Java 开发的,根据路线学完之后,可以选择开发、测试、运维这几个方向。

Java语言入门与进阶

第一个阶段,是 Java 语言的学习,包括入门和进阶。推荐 B 站的韩顺平老师,每个视频看完之后,跟着敲一遍,里面会有作业,也可以做一下,熟悉 Java 的语法。里面的小项目,时间充足的可以做一下,赶时间的直接跳过。

总结这个阶段需要重点掌握的:Java 基本语法、异常、Integer类、String类、StringBuffer、StringBuilder、重点的集合类型,包括:List 、ArrayList、Vector、HashMap、ArrayList、Hashtable,以及多线程、常见的设计模式。

HashMap、ArrayList、Hashtable 这三个集合的get、put操作,需要跟着视频阅读一下源码。

第一遍看,如果觉得自己对这些东西都很陌生,那么遇到源码解析的部分,可以跳过,先学会怎么用,把代码跑起来,让自己和代码之间,有一种亲切的感觉,而不是看到大堆的英文,然后一直浮躁。

时间充裕的,推荐看这本书:《On Java》

MySQL

第二个阶段,学习一种关系型数据库。推荐学习 MySQL,因为他是免费开源的,适合自学,其他数据库都类似。推荐小林的《图解mysql》来简单入门,对于文章类型的资料,第一次看有很多不懂的地方,没关系,反复看多几次,有时间可以看一些大佬写的书,就会有顿悟的感觉了。

时间充裕的,推荐看这本书:《MySQL 必知必会》

Redis

接着来学习缓存数据库,Redis 是最常用的,也是免费开源。资料的话,B站随便找个视频,先学用法,可以部署在本地或者服务器,跑起来之后,试着运行一些命令,为了后面做项目,遇到 Redis 部分不至于太陌生。

SpringBoot + Mybatis

到这里,就进入框架层面的学习了。这两个东西,在 B 站都有一堆的视频,注意不要全看完,不然会很花时间,而且很多看了也会忘,还是先学会怎么用,遇到源码解析部分先跳过,不然看了也是懵逼状态。

SpringBoot 主要掌握一些注解的使用,基本的配置,依赖怎么搞的,同时会涉及到 Maven 的知识,简单了解即可。

Mybatis 主要是用来在框架当中操作数据库的。

实战项目

到这里,可以自己找一个感兴趣的项目,来实战一下了。B站、github、码云这几个平台都可以找,最好找一些有完整教程和完整代码的,可以先部署好,把项目跑起来,然后再从一个个接口入手,学习为什么要这样写。

注意,在实战项目这个过程中,肯定会遇到很多的报错,不要灰心,即使跟视频里一模一样的代码,也可以会报错,因为运行的环境不一样,可能使用的配置版本也不一样,报错很正常。时间充足的可以折腾一下;如果赶时间的话,还是建议找一个有完整代码的项目,不至于一个 bug 自己搞两三天还解决不了,这样的消耗不能说没意义,但是求职路上,时间就是金钱

同时也会遇到一些中间件,比如 MQ、ElasticSearch 等等,也是推荐先学会使用,然后再学底层原理。做的时候可以自己尝试一下使用git 来管理代码,而不是直接存在某个文件夹,习惯提交代码、回滚之类的基本操作,因为工作之后肯定要用到的。代码管理平台推荐国内的码云(gitee)。

找工作

学完以上这些东西,就可以直接背八股文,然后找工作了,如果目标是小厂,那么上面这些就足够了。

目标是中大厂的同学,还要补一下 JVM 、计算机网络、操作系统。主要都是一些八股文,我自己是买了一个八股文小程序,每次面试之前,都突击一下。不想花钱的同学,可以看小林 coding 的网站,但感觉还是我的小程序比较给力,至少命中率都挺高的。

对于八股文小程序的说明,可以看这里。

以上要学的东西,都是一定有用,而不是可能有用,时间紧迫,在有限的时间,我们要做优先级最高的事情!

最后,文中所提及的书籍,都可以在微信公众号“徒手敲代码”当中免费获取,这也是我自己的公众号,希望通过分享自己的面试求职心得,以及对常见面试题的理解,帮助更多的小伙伴找到心仪的工作。


http://www.ppmy.cn/news/1462755.html

相关文章

mysql相关知识总结

目录 1.建表2.添加字段3.修改字段类型4.添加索引5.遇到的问题 1.建表 CREATE TABLE test.table_test ( id bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 主键id, day date DEFAULT NULL COMMENT 日期, show_cnt bigint(20) DEFAULT 0 COMMENT 曝光次数, play_time do…

小程序视频怎么保存到本地相册

在快节奏的生活中,小程序已成为我们获取信息和娱乐的重要渠道。但当您遇到那些精彩绝伦的小程序视频,是否曾想过如何将它们保存到本地相册,以便随时回味?无论您是安卓用户还是iPhone用户,本文将为您揭秘如何轻松实现这…

XH连接器>KH-XH-5A-Z

品  牌: kinghelm(金航标) 厂家型号: KH-XH-5A-Z 封装: 插件,P2.5mm 商品毛重: 0.429克(g) 包装方式: 袋装

深度学习500问——Chapter09:图像分割(5)

文章目录 9.12 DenseNet 9.13 图像分割的数据集 9.13.1 PASCAL VOC 9.13.2 MS COCO 9.13.3 Cityscapes 9.14 全景分割 9.12 DenseNet 这篇论文是CVPR2017年的最佳论文。 卷积神经网络结构的设计主要朝着两个方向发展,一个是更宽的网络(代表&#xff1a…

“高考钉子户”唐尚珺决定再战2024年高考

“高考钉子户”唐尚珺决定在2024年再次参加高考,这个选择确实很特别也很有趣。十几年连续参加高考,他已经积累了大量的备考经验和应试技巧。这样的经验对于高考辅导机构来说无疑是非常宝贵的资源,他如果选择去辅导机构当老师,应该…

微软必应全球宕机事件分析及其对ChatGPT、Copilot等服务的影响

微软必应全球宕机事件分析及其对ChatGPT、Copilot等服务的影响 一、引言 在数字化时代,云计算和在线服务已成为人们日常生活和工作不可或缺的一部分。然而,当这些服务遭遇故障或宕机时,其影响范围往往远超出人们的想象。近期,微…

Prometheus监控平台配置--监控mysql

上一篇中讲述了怎么安装Prometheus,然后对服务器集群资源信息进行监控并通过grafana展示监控信息,在这一篇中我们只讲和mysql相关的监控,关于prometheus的监控原理以及安装可以看下上一篇。 1.上传 通过rz命令将安装包上传到任意目录&#xf…

分布式数据库HBase入门指南

目录 概述 HBase 的主要特点包括: HBase 的典型应用场景包括: 访问接口 1. Java API: 2. REST API: 3. Thrift API: 4. 其他访问接口: HBase 数据模型 概述 该模型具有以下特点: 1. 面向列: 2. 多维: 3. 稀疏: 数据存储: 数据访问: HBase 的数据模型…

Springboot+Vue项目-基于Java+MySQL的酒店管理系统(附源码+演示视频+LW)

大家好!我是程序猿老A,感谢您阅读本文,欢迎一键三连哦。 💞当前专栏:Java毕业设计 精彩专栏推荐👇🏻👇🏻👇🏻 🎀 Python毕业设计 &…

记录Python低代码开发框架zdppy_amcrud的开发过程

实现新增接口 基础代码 import env import mcrud import api import snowflakeenv.load(".env") db mcrud.new_env()table "user" columns ["name", "age"]async def add_user(req):data await api.req.get_json(req)values [d…

【html5】05-自定义属性-切换页面-tab栏新闻列表

引言 04篇的自定义小案例 效果 代码 <!DOCTYPE html> <html lang"en"><head><meta charset"utf-8"><style type"text/css">* {margin: 0;padding: 0;list-style: none;text-decoration: none;}.news {width: 4…

一个基于HOOK机制的微信机器人

一个基于✨HOOK机制的微信机器人&#xff0c;支持&#x1f331;安全新闻定时推送【FreeBuf&#xff0c;先知&#xff0c;安全客&#xff0c;奇安信攻防社区】&#xff0c;&#x1f46f;Kfc文案&#xff0c;⚡备案查询&#xff0c;⚡手机号归属地查询&#xff0c;⚡WHOIS信息查询…

文件系统--软硬链接

文章目录 现象软链接硬链接 现象 建立软链接 建立硬链接 // 删除软硬链接都可以用 unlink 指令 unlink soft-link软链接 软链接是一个独立的文件&#xff0c;因为有独立的inode number 软链接的内容&#xff1a;目标文件所对应的路劲字符串如果我们直接查看软链接文件&#…

期末考试真题c语言知识点速成

选择题及答案 题目: 在C语言中&#xff0c;哪个关键字用于声明一个函数&#xff1f; A. classB. functionC. voidD. int 答案: D. int 题目: 下列哪个是C语言的标准输入输出库&#xff1f; A. math.hB. stdio.hC. string.hD. time.h 答案: B. stdio.h 题目: C语言中&…

SpringCloud系列(22)--Ribbon默认负载轮询算法原理及源码解析

前言&#xff1a;在上一篇文章中我们介绍了如何去切换Ribbon的负载均衡模式&#xff0c;而本章节内容则是介绍Ribbon默认负载轮询算法的原理。 1、负载轮询算法公式 rest接口第N次请求数 % 服务器集群总数 实际调用服务器下标&#xff08;每次服务器重启后rest接口计数从1开始…

人工智能的阴暗面:犯罪分子如何利用 AI 进行欺诈

在当今数字化时代&#xff0c;人工智能&#xff08;AI&#xff09;正迅速成为推动各行各业生产力和创新的关键力量&#xff0c;而一些不法分子也开始探索如何将这些先进的工具用于他们自己的非法目的。从网络钓鱼到深度伪造&#xff0c;再到人肉搜索、越狱服务和身份验证系统的…

SO_REUSEPORT 之 TCP负载均衡验证

首先启动两个tcp server&#xff0c; 代码里开启 SO_REUSEPORT [my_testlocalhost test]$ ./tcp_server_reuseport & [1] 1864 [my_testlocalhost test]$ Server listening on port 8888[my_testlocalhost test]$ ./tcp_server_reuseport & [2] 1865 [my_testlocalh…

《Google 软件工程》读书笔记

1. 写在前面 在图书馆瞎逛&#xff0c;偶然瞄见一本《Google 软件工程》Titus Winters, Tom Manshreck, Hyrum Wright 著。主要是在这一排的书架上就这本书看着挺新的&#xff08;不知道为什么有一种喜欢看新书的情节&#xff09;&#xff0c;而且最近被领导老批评&#xff0c;…

数据结构-队列(带图详解)

目录 队列的概念 画图理解队列 代码图理解 代码展示(注意这个队列是单链表的结构实现) Queue.h(队列结构) Queue.c(函数/API实现) main.c(测试文件) 队列的概念 队列&#xff08;Queue&#xff09;是一种基础的数据结构&#xff0c;它遵循先进先出&#xff08;First In …

基础—SQL—通用语法及分类

一、SQL的通用基本语法 &#xff08;1&#xff09;SQL语句可以单行或多行书写&#xff08;以分号结尾&#xff09;。 &#xff08;2&#xff09;在编写SQL语句的时候&#xff0c;如果长度比较长&#xff0c;我们可以允许空格/缩进来增强语句的可读性&#xff0c;而且空格或者…