2024java开发学习路线

news2024/11/15 9:18:09

文章目录

    • 第一阶段【JAVA基础】
    • 第二阶段【数据库+jdbc】
    • 第三阶段【JavaWeb】
    • 第四阶段【框架】
    • 第五阶段【微服务】
    • 第六阶段【常用中间件】
    • 第七阶段【查缺补漏】

别问,问就是Java已死!这是在2023年疫情解封后,市场经济低迷的情况下,有人对Java开发领域的质疑。然而,正是在这样的背景下,小伟按照以下的学习路线成功地获得了十几K的校招offer(小伟普本哈,985的学霸们当然不屑啦)。

从零基础入门到可以找到工作的程度,至少需要准备一年半!科班出身,已经学习过java、数据库等一些课程,根据个人情况,时间适当减少。如果你正处于大三,那么现在正是你迎接挑战、开启职业生涯的最佳时机!如果你已经大四,正面临着找工作的焦虑,我建议你选择别的学科或者直接参加培训班。(毕竟时间就是金钱!)
在这里插入图片描述

大一的同学们:

积极参加各类学科竞赛,其中ACM竞赛的含金量最高,这将成为你大四讨饭时的第二大竞争力!

那么,你可能好奇第一竞争力是什么呢?毫无疑问,它就是实习经验!趁着寒暑假或者课程相对较少的学期,不要犹豫,疯狂地去寻找实习机会吧!不要在乎眼前的利益,即使没有报酬,也要坚持下去!因为参与实际项目开发能够带来无法在其他地方获得的成长机会!

对了,记得学好 数据结构、操作系统、计算机网络、计算机组成原理 四门专业课!!!!


第一阶段【JAVA基础】

建议用时:45天
重点知识点:数据类型、核心语法、面向对象、集合、IO流、String/StringBuffer/StringBuilder、线程、并发、反射、泛型

万事开头难!基础知识非常重要,即使没有实际项目经验也没关系,但基础一定要打好!一般在笔试和面试的第一轮中,对基础知识的考察比较多。

对于初学者来说,视频教程是最有助于理解的学习方式,也是学习速度最快的方法。在后续查漏补缺时,可以参考一些书籍或回顾之前的笔记。如果已经有一定的Java基础知识,可以直接阅读相关书籍进行复习。但在观看视频时,不能只听不练(哈哈,每次抬头都能看到隔壁的小汪同学在看视频的时候居然睡着了!)建议用IDEA工具,更普遍一些。

课程 尚硅谷Java零基础全套视频教程(宋红康主讲,java入门自学必备)

推荐一本java基础的书籍:《JAVA核心技术 卷1》,入门书籍看这一本就够了,对照上面列出的知识点,吃透这些基础知识,就可以了,后面的Swing、applet等等就不需要看了。

第二阶段【数据库+jdbc】

建议用时:25天
重点知识点:基本的增删改查,SQL 命令,索引、存储过程;JDBC

主流的数据库包括MySQL、Oracle、SQL Server等等。掌握其中一个数据库系统就足够了,因为数据库知识是相通的,一旦掌握了其中一个,学习其他数据库也较为容易。

目前,在很多公司中,MySQL是被广泛使用的数据库系统。因此,我建议大家重点学习MySQL数据库。通过学习MySQL,你可以掌握数据库的基本原理、SQL语言、数据库设计和管理等方面的知识,这对日常的开发工作和面试都非常有帮助。当然,在实际工作中,还是根据公司的需求和具体项目来选择合适的数据库系统。

MySQL数据库

MySQL入门推荐老杜的MySQL入门基础,简单易懂!一旦你掌握了MySQL的基础知识并入门了该领域,我建议你观看宋红康的MySQL从菜鸟到大牛。该课程提供了更深入的MySQL知识和技巧,通过生动的讲解和实例演示,帮助你从一个初学者成长为一个熟练的数据库专家。另外,我建议大家可以顺便刷一些相关的题目,特别是在笔试或面试中,SQL题目是必不可少的。可以在一些在线刷题平台上找一些SQL题目进行练习,比如牛客网、力扣等。

课程

  • MySQL入门基础
  • MySQL从菜鸟到大牛

JDBC

JDBC是连接Java和数据库的纽带,而原生的JDBC在进行数据库开发时可能显得有些繁琐。因此,在实际开发中,通常会选择使用第三方数据库框架来简化数据库操作,比如MyBatis等。这些框架都是对JDBC技术的封装,提供了更便捷和高效的方式来进行数据库开发。

然而,当在开发过程中遇到问题时,如果你对JDBC的底层原理有一定的了解,那么这些问题通常不会成为难题。深入理解JDBC的工作原理可以帮助你更好地理解数据库框架的内部机制,并能够更好地排查和解决与数据库交互相关的问题。所以我觉得有必要学习的!!!

课程 JDBC实战教程

第三阶段【JavaWeb】

建议用时:20天
重点知识点:HTML、CSS、JS、Vue、Servlet程序、Filter过滤器、Listener监听器、EL表达式、JSTL标签库、Cookie技术、Session会话、JSON使用、Ajax请求、Tomcat、maven等等

Java开发的岗位大多是Web开发,所以最好学一学前端的基础,虽然现在都是前后端分离的方式,但是你要懂前端界面和后端数据是怎样交互的,与前端工程师的沟通合作会更加顺利。另外,像一些小公司要求全栈(全栈钱少事多,不靠谱!),希望招来的后端开发也能做一些前端的工作,省一些人力成本。

JavaWeb

我学习那会儿看的是尚硅谷JavaWeb教程20版的,不过出来后发现20版中许多前端技术都过时了,如jQuery。推荐大家看最新的!我建议花一周时间学习Vue。掌握这个流行的js前端框架可以为你的毕设开发提供更好的前端支持。

课程 尚硅谷JavaWeb教程23版

Maven

大家还记得在学习JavaWeb时需要向web项目中引入少许jar包嘛?还记得引入jar包的繁琐过程嘛?实际项目中可能光基座需要引入的jar包就成千上万,jar包从哪里获取也是一个问题。项目中的jar包不仅数量庞大,彼此之间存在着错综复杂的依赖关系,如果程序员需要手动梳理是需要极大的学习成本,且这些工作对实现业务功能毫无帮务。开发人员应该将精力集中投入于业务上,不应该投入大量的时间在依赖管理上。Maven 是 Apache 软件基金会组织维护的一款专门为 Java 项目提供构建依赖管理支持的工具。

课程 项目管理工具Maven

第四阶段【框架】

建议用时:30天

重点知识点:Spring、SpringMVC、Mybatis、SpringBoot、MyBatisPlus

SSM

时间宽裕的情况下,Spring、SpringMVC都学习一下,搞懂 AOP 和 IOC 两个概念,以及Spring 中 bean 的作用域与生命周期、SpringMVC 工作原理,对理解Spring相关的框架非常重要。

课程

  • Spring零基础入门到进阶
  • SpringMVC教程
  • MyBatis零基础入门教程

SpringBoot+MyBatisPlus

如果时间非常紧张,可以直接看Springboot和MyBatisPlus,SpringBoot简化配置,非常好理解,这两个框架学完,就能看懂项目了,理解的深度肯定有限的。

课程

  • SpringBoot2零基础入门教程
  • MyBatisPlus教程

下面这个课程意在讲解如何使用SSM(Spring+SpringMVC+MyBatis)框架结合SpringBoot和MyBatis-Plus进行高效的JavaWeb开发。

课程 SSM框架实战精讲

码码项目

学完SSM(Spring + Spring MVC + MyBatis)后,你可以考虑进行一个实际项目,如米米商城。这个项目可以帮助你将所学的知识应用到实际开发中,并提升你的技术能力。建议10天

课程 SSM框架实战-米米商城 建议10天

学完Spring Boot和MyBatis Plus之后,需要通过做项目帮助你将所学的知识应用到实际开发中,并提升你的技术能力。

课程 瑞吉外卖 建议5天

第五阶段【微服务】

建议用时:30天

重点知识点:Spring Cloud Netflix、Spring Cloud Alibaba、Dubbo

这年头不了解微服务出来是找不到工作的,微服务架构已经成为一种非常热门的技术趋势。许多企业正在将传统的单体应用转向微服务架构,因此对微服务的了解已经成为许多雇主在招聘过程中的重要考量因素之一。

课程

  • Spring Cloud Netflix
  • Spring Cloud Alibaba

Dubbo作为一款高性能的RPC框架,在许多企业中被广泛使用,并且常被用作替代Feign。Dubbo的课程B站上质量都不怎么好大家自寻吧~

第六阶段【常用中间件】

建议用时:30天

重点知识点:Redis、RocketMQ、ElasticSearch

这一阶段属于拔高的部分。如果时间不够,着急找工作的话,可以跳过这部分,直接项目的学习,回头再补。

课程

  • Redis
  • RocketMQ (mq掌握一个就够了,杭州这边RocketMQ主流一点)
  • Elasticsearch

码码项目

如果时间充足建议以下项目三选二,如果着急找工作的话把谷粒商城高级篇做完就大差不差了~

  • 谷粒商城 建议45天
  • 尚上优选建议30天
  • 尚品甄选建议40天

第七阶段【查缺补漏】

建议用时:20天

重点知识点:JVM、JUC、Linux、Docker、Nginx

这个时候要开始准备面试了,至至少需要大概一个月的时间去背八股!前面提到的只是大致流程,还有一些技术栈没有列举,例如Linux、Docker等,如果有条件的话,还可以尝试学习K8s。

课程

  • linux
  • Docker
  • JVM
  • JUC

JVM、JUC等知识还是推荐大家多看看书,如周志明老师的《深入理解Java虚拟机》以及《Java并发编程的艺术》~

这个时候一定要去拍一张精品证件照在超级简历上优化一份优雅的简历(100米还挺划算的)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1387680.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

编码技巧:如何在Golang中高效解析和生成XML

编码技巧:如何在Golang中高效解析和生成XML 引言Golang中的XML基础解析XML文件生成XML文件错误处理和调试高级技巧和最佳实践总结 引言 在当今数据驱动的编程世界中,有效地处理各种数据格式是每个开发人员必备的技能之一。其中,XML&#xff…

快速高效处理长图:按指定高度切长图的方法,提升设计品质

在现代视觉传达设计中,长图作为一种常见的表现形式,被广泛应用于各种场景。如何快速高效地处理长图,使其符合设计要求和用户体验,成为设计师们面临的一大挑战。现在来看“办公提效工具”如何按指定高度切长图,提升设计…

Python: locals()详细解释

locals() 是一个内置函数,用于返回当前局部作用域的字典。这个字典包含了当前函数或模块中所有局部变量的名称和值。具体来说: locals()返回值:一个字典,包含了当前局部作用域的所有局部变量。 这个函数在不同的上下文中有不同的…

SpringBoot项目的两种发布方式(jar包和war包)

SpringBoot项目的两种发布方式&#xff08;jar包和war包&#xff09; 在springboot入门和项目示例这个项目和application.yml配置端口号和访问url路径基础上进行修改 1、使用jar包方式发布 1.1、在pom.xml中添加一个SpringBoot的构建的插件 <build><plugins>&l…

Openlayer【四】—— 控件

控件 控件是一个可见的小部件&#xff0c;其 DOM 元素位于 屏幕。它们可以涉及用户输入&#xff08;按钮&#xff09;&#xff0c;也可以仅供参考; 位置是使用 CSS 确定的。默认情况下&#xff0c;它们位于 容器&#xff0c;但可以使用 任何外部 DOM 元素。 其中ol/control是…

存储的基本架构

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 一、存储的需求背景二、自下而上存储架构总结 一、存储的需求背景 1、人的身份信息需要存储 这种信息可以用关系型数据库&#xff0c;例如mysql&#xff0c;那种表…

4 - JdbcTemplate

spring 框架如何处理对数据库的操作呢? 1. 基本介绍 文档&#xff1a;JdbcTemplate APIs : /spring-framework-5.3.8/docs/javadoc-api/index.html JdbcTemplate 是 Spring 提供的访问数据库的技术。可以将 JDBC 的常用操作封装为模板方法 已经提供了特别多的 API 2. 使用…

说一说文件转换服务的系统设计

一、背景 我们需要把word/ppt转换为pdf&#xff0c;刚开始自研&#xff0c;后改为和第三方服务合作。 因为涉及到第三方服务的源码及软件著作的安全问题&#xff0c;我们约定把待转换的文件下载到对方管控的机器里&#xff0c;而不是在我们的机器上安装第三方的转换工具。 这…

从0开始学Git指令(3)

从0开始学Git指令 因为网上的git文章优劣难评&#xff0c;大部分没有实操展示&#xff0c;所以打算自己从头整理一份完整的git实战教程&#xff0c;希望对大家能够起到帮助&#xff01; 远程仓库 Git是分布式版本控制系统&#xff0c;同一个Git仓库&#xff0c;可以分布到不…

VUE项目快速打包发布

VUE项目快速打包发布 首先在你的VS Code中新建一个终端 输入 npm run build 回车等运行结束之后会在你的项目中生成一个dist目录 此时再iis部署的时候把你添加的网站指定的目录指向dist即可

202405读书笔记|《作家榜名著:宋词三百首(马未都亲笔推荐版)》——绿酒初尝人易醉,一枕小窗浓睡

《作家榜名著&#xff1a;宋词三百首&#xff08;马未都亲笔推荐版&#xff09;》画很美&#xff0c;词也是&#x1f618;&#x1f618;&#xff0c;既廖远又色彩明艳&#xff0c;丰富而丰盈&#xff0c;看的很欢乐的一本书。部分节选如下&#xff1a; 艳溢香融 天遥地远&…

为什么很多人不看好鸿蒙?轻舟已过万重山

其实这个争议存在很久了。但是到2023年9月份开始&#xff0c;华为秋季发布会上宣布了“鸿蒙不再兼容Android”当时就已经炸开了锅。这个消息让很多不看好鸿蒙的人都闭上了嘴。我们作为国人应该支持自己的操作系统。 鸿蒙4.0&#xff0c;轻舟已过万重山&#xff01; 鸿蒙Harmo…

第七在线智能商品计划签约潮流风向标Alexander Wang亚历山大·王

Alexander Wang&#xff08;亚历山大•王&#xff09;是由华裔设计师王大仁于2004年创立的同名服装品牌&#xff0c;源自纽约&#xff0c;隶属意大利YOOX集团。主营业务涉及成衣、包袋、鞋履、配饰等。并以其简洁、时尚、前卫的设计风格而备受瞩目&#xff0c;它的设计融入了时…

代码随想录算法训练营Day21| 93.复原IP地址、78.子集、90.子集||

LeetCode 93 复原 IP 地址 本题思路&#xff1a;最重要的是想到一个收集结果的条件&#xff0c;也就是终止条件。 当 . 的个数达到三个时候&#xff0c;并且&#xff0c;判断最后剩余的是否符合要求&#xff0c;如果符合&#xff0c;说明整个ip地址可以&#xff0c;就加入到结…

16位单片机单片机S1C17153

16位单片机单片机 .16KB ROM / 2KB内存 * S1C17653对于程序开发很有用。 .产生具有内置振荡器的操作时钟。 - OSC3B振荡器电路&#xff1a;2MHz/1MHz/500kHz&#xff08;类型&#xff09;内部振荡器电路 -OSC1无振荡器电路&#xff1a;32.768 kHz&#xff08;类型&#xf…

SpringBoot中整合ElasticSearch快速入门以及踩坑记录

场景 若依前后端分离版手把手教你本地搭建环境并运行项目&#xff1a; 若依前后端分离版手把手教你本地搭建环境并运行项目_本地运行若依前后端分离-CSDN博客 参考上面搭建项目。 ElaticSearch Elasticsearch 是java开发的&#xff0c;基于 Lucene 的搜索引擎。它提供了一…

【计算机组成与体系结构Ⅱ】MIPS指令系统(实验)

实验2&#xff1a;MIPS指令系统 一&#xff1a;实验目的 了解和熟悉指令级模拟器。熟练掌握MIPSsim模拟器的操作和使用方法。熟悉MIPS指令系统及其特点&#xff0c;加深对MIPS指令操作语义的理解。熟悉MIPS体系结构。 二&#xff1a;实验要求 采用指令集和流水线操作级模拟器…

安卓开发-02-基础

文章目录 一、基本UI组件文本类组件TextViewEditText 按钮类组件普通按钮为普通按钮添加的单击事件监听器 图片按钮单选按钮复选框&#xff08;进行多选&#xff09; 日期时间类组件日期选择器时间选择器计时器 二、高级UI组件进度条组件拖动条组件星级评分条图像类组件图像切换…

ML:2-2 neural network 如何完成预测

文章目录 1. 神经网络层2. 更复杂的神经网络3. 神经网络的前向传播forword propagation 【吴恩达机器学习笔记p47-49】 1. 神经网络层 【了解神经网络如何完成预测的】 input&#xff1a;4个数字的向量。3个神经元分别做logistic regression。下角标&#xff1a;标识第 i 个神…

AbstractHttpMessageConverter + easyexcell优雅下载附件

介绍 AbstractHttpMessageConverter 是 Spring 框架中用于处理 HTTP 消息转换的抽象基类。它用于处理来自 HTTP 请求的消息,并将其转换为特定的 Java 对象,或者将 Java 对象转换为 HTTP 响应消息。 这个抽象类允许开发人员创建自定义的 HTTP 消息转换器,以便在 Spring MVC…