Java学习路线

开启你的学习之旅(学习路线)

一、学习方法

  • 下面知识点的讲解,基本都会配套笔记,可以在我的专栏中查看对应的知识点。
  • 每个知识点的课程推荐都是我之前看过的视频,质量比较高才会推荐,但现在视频更新都比较快,大家可以在B站看更新、评论更好的视频。
  • 平台选择:推荐黑马程序员还有尚硅谷。可以直接跟着平台的学习路线进行学习,但有些黑马讲得好,有些尚硅谷讲得好,每次学习一门新技术前先搜一下哪个平台的更好。
  • 看视频前先看评论区,可以避免很多坑。遇到不会的看弹幕。
  • 学习一定要记笔记。推荐使用TyporaTypora记笔记,直接在360下载或者在我上传的资源中查找,可以看下这篇博客:如何使用Typora记笔记?不要使用Word、Text文本。
  • 学习编程一定要多敲代码。

二、JavaSE

  • Java语言的基础,是Java的最基本的库,基础语法加常用库类。
  • 必须掌握:变量与运算符、流程控制、数组、字符串、面向对象、异常、多线程、集合、常用类。
  • 开发工具:推荐使用IDEA,eclipse也可以但是不太方便。
  • 书籍推荐:《Java从入门到项目实战》——李兴华
  • 推荐理由:知识点都有覆盖并且有案例讲解,书籍也相当于一本笔记,在不懂时可以快速查阅,但缺点还是比较明显,毕竟这本砖头书不可能时时带在身边。有些不懂的地方只能靠自己梳理明白,相比课程还是较为枯燥,所以还是更推荐视频学习。
  • 课程推荐: 尚硅谷Java入门-宋红康
  • 学习内容:入门看到580小节就可以了,顺便看下Lambda和stream流的使用,当然有时间最好还是全部看完,有些可能暂时或者很长一段时间用不上,但做个了解还是好的,并且知识点的讲解并不是完全独立的,后面有依赖前面,可以了解跟其他知识点是如何配合使用的。没有时间就看上面提到的必须掌握的部分即可,也够用了。
  • 推荐理由:老师讲课很有趣、是非常好的一门入门课程,知识覆盖面较广且深,包括面试题、算法题、源码的讲解。

三、数据库

  • MySQL(或者Oracle),软件最终都是操作数据,而数据存储在数据库当中,企业中,尤其是互联网公司大部分都是使用MySQL,有精力再学Oracle。其实语法相差还是不大的。
  • 初学者一般只需要掌握基本的增删改查语法,一些关键字where、in、like等的使用。
  • 开发工具:通过MySQL服务自带的命令行窗口:MySQL Command Line Client,或者是Navicate,不太推荐MySQL Workbench,界面复杂。
  • 书籍推荐:《SQL必知必会》
  • 推荐理由:只讲解SQL语法,而不是从枯燥乏味的原理讲起。对于初学者来说,学习SQL语法即可,并不需要掌握多么高深的理论。
  • 课程推荐:MySQL入门到精通,推荐进阶阶段看。
  • 推荐理由:讲解了面试阶段涉及的知识点,包括SQL优化、索引、存储引擎、锁。

四、JDBC

JDBC(Java DataBase Connectivity)是Java操作各种数据库而定义的一种规范,该规范是一种应用协议。数据库厂商根据这个规范来实现数据库,就可以让Java语言屏蔽数据库的不同,直接使用这个协议提供的接口进行数据的增删改查。更换数据库只需要更换驱动,更改一小部分的配置即可。
这部分不需要专门去学习,在学习JavaWeb时就有相应的讲解。

五、web前端

  • 系统结构常见有两种,C/S 和B/S
  • 浏览器B端就是web前端,在浏览器上运行的语言包括:HTMLCSSJavaScript
  • 作为一个Java程序员,还是需要掌握一部分前端方面的知识,比如上面提到的前端三剑客+进阶阶段的 Jquery(Javascript框架)+Ajax。当然不需要学习得很深入,同样也在JavaWeb学习过程中掌握即可。

六、JavaWeb

  • 这部分知识在学习Java过程中都会接触到,但现在都是用SpringBoot进行项目开发。所以并不是很重要,有一两个项目练习即可,不要耗费太多时间。直接在JavaWeb实战过程中学习即可。
  • BS结构,我们主要学习S端,S端就是Server端(服务器端),服务器端可以是Python语言,可以是PHP,当然也可以是Java,目前Java居多,占大部分。
  • 一个Javaweb项目包括前端还有后端,后端我们采用Java语言,前端学习HTML、CSS、Javascript,这种方式属于前后端分离,当然在学习阶段只是概念上分离,开发还是不分离,前端页面可以独立于后端存在,有些课程是采用Thymeleaf进行前端页面渲染、JSP页面跟后端交互展示数据,这种属于前后端不分离,需要前后端一起开发,前端不能独立于后端存在。其中JSP是一门过时了的技术,不需要耗费时间精力去学了,不过维护项目还是有可能见到的。

七、JavaWeb实战项目

  • 项目推荐:尚硅谷JavaWeb教程
  • 技术栈:
    • 前端: HTML+CSS+Javascript+jQuery+Ajax+Vue
    • 后端:Servlet+Mysql+JDBC

八、Maven

  • Maven主要作用是依赖管理还有项目构建,详情可看Maven的作用。
  • Maven的下载与安装配置
  • 课程推荐:尚硅谷Maven课程学习,Maven其实知道如何导入依赖坐标,跟构建项目就够了,学习一两个小时其实就够了。这门课20个小时,前5个小时应该就讲完了Maven的作用跟使用。后面主要是做一个JavaWeb项目,项目还是挺有趣的,用到了Thymeleaf技术,有需要的同学可以学一下。不过JavaWeb不需要耗费太多时间。

九、SSM三大框架

  • SSM是由Spring+SpringMVC+MyBatis三个技术组成的。学习上我觉得没什么顺序,学完JavaWeb项目后,我引入SpringMVC技术进行项目改造,其实这三个技术是独立开来的,并不是说用SpringMVC就一定要搭配上另外两个,所以当你学完了一个技术后就可以应用到之前的JavaWeb中,熟悉一下。其中Spring可以说是一门原理课,但这个原理贯穿了SSM以及后面的SpringBoot技术,学习起来比较吃力,不能急于求成,跟着教程多了解多动手练习即可。Spring课程就不推荐了,之前看的尚硅谷最高播放量的Spring课程感觉一般。

  • 课程推荐:

    • SpringMVC课程-尚硅谷
    • Mybatis课程-尚硅谷
    • Mybatis-Plus课程-尚硅谷

十、SSM实战项目

  • 可以跳过此部分学习。
  • 项目推荐:SSM框架整合-快速实现CRUD
  • 网上的SSM项目还是比较少的,这个是我看到的着重于SSM框架整合的项目。但前端部分的讲解占了一半以上的时长,页面是用JSP写的,我改成Thymeleaf,后面会上传平台。

十一、SpringBoot

SpringBoot是对SSM框架的整合,可以简化SSM项目的配置,做到高效开发。SpringBoot有它本身的注解、使用方法,这些需要在SpringBoot的学习中掌握。

  • 课程推荐:黑马SpringBoot全套课程
  • 这个课程安排得非常合理,从SpringBoot项目创建到小项目的开发、各种技术的整合,运维、原理讲起,而不是从理论开始让学生感到迷茫不知所措。

十二、SpringBoot项目实战

  • 项目推荐:黑马-瑞吉外卖
  • 这个项目在我看来是很经典了,很多文章都会介绍,但有一些是说这个项目含金量不足,确实如此,从技术栈来说没什么亮点,但作为新手入门SpringBoot项目实战是非常合适的。从这个项目中可以掌握到的技术是很多的,难度也不高。可以结合我的笔记学习:瑞吉外卖开发梳理

十三、Redis

在之前的瑞吉外卖项目中就已经涉及到Redis用作缓存了,但Redis的功能很强大,缓存只是一种常见的方式,相比MySQL而言,Redis在数据处理上更为丰富。

  • 课程推荐:黑马Redis从入门到实战
  • 这个课程从Redis的基础讲起,主要通过项目实战进行Redis学习。课程中的黑马点评项目含金量很高,特别是秒杀部分的学习。项目涵盖了目前主流的开发技术,比如SpringBoot、MySQL、Redis。技术栈跟瑞吉外卖一样,但是该项目不是一个单体项目,所以提供了很多分布式下问题的解决思路,秒杀涉及到高并发的处理,这部分是项目的一大亮点。功能不再仅仅是以往接触的增删改查,而是实现了更为丰富的操作,比如附近的人、共同关注等。

十四、微服务

这一部分先推荐课程:黑马微服务课程,后续补充各个技术点。

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

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

相关文章

python web GUI框架-NiceGUI 教程(二)

python web GUI框架-NiceGUI 教程(二) streamlit可以在一些简单的场景下仍然推荐使用,但是streamlit实在不灵活,受限于它的核心机制,NiceGUI是一个灵活的web框架,可以做web网站也可以打包成独立的exe。 基…

大数据——一文熟悉HBase

1、HBase是什么 HBase是基于HDFS的数据存储,它建立在HDFS文件系统上面,利用了HDFS的容错能力,内部还有哈希表并利用索引,可以快速对HDFS上的数据进行随时读写功能。 Hadoop在已经有一个HiveMapReduce结构的数据读写功能&#x…

②matlab桌面和编辑器

目录 matlab编辑器练习 运行脚本 matlab编辑器练习 您可以通过点击灰色代码框在脚本中输入命令。 准备就绪后,您可以通过点击蓝色的提交按钮提交代码。 任务 在脚本中输入命令 r 3。 2.任务 在脚本中添加命令 x pi*r^2。 附加练习 当您在实时编辑器中完成…

解锁安全高效办公——私有化部署的WorkPlus即时通讯软件

在当今信息时代,高效的沟通与协作对于企业的成功至关重要。然而,随着信息技术的发展,保护敏感信息和数据安全也变得越来越重要。为了满足企业对于安全沟通和高效办公的需求,我们隆重推出私有化部署的WorkPlus即时通讯软件&#xf…

OpenCV简介

OpenCV简介 OpenCV(开源计算机视觉库:http://opencv.org)是一个开源库,包含数百种计算机视觉算法。OpenCV 具有模块化结构,主要包括下列模块: 核心功能(core) - 定义基本数据结构的…

iOS砸壳系列之三:Frida介绍和使用

当涉及从App Store下载应用程序时,它们都是已安装的iOS应用(IPA)存储在设备上。这些应用程序通常带有保护的代码和资源,以限制用户对其进行修改或者逆向工程。 然而,有时候,为了进行调试、制作插件或者学习…

登高不系安全带自动识别

登高不系安全带自动识别采用yolov8深度学习算法框架模型,登高不系安全带自动识别能够自动检测和识别登高作业人员是否佩戴安全带,过滤其他类似物体的干扰。登高不系安全带自动识别发现有人员未佩戴安全带,将立即触发预警。根据YOLO的设计&…

【算法训练-模拟】模拟设计LRU缓存结构

废话不多说,喊一句号子鼓励自己:程序员永不失业,程序员走向架构!本篇Blog的主题是LRU缓存结构设计,这类题目出现频率还是很高的,几乎所有大厂都常考。 当然面对这道题,首先要讲清楚LRU是干什么…

新SDK平台下载开源全志V853的SDK

获取SDK SDK 使用 Repo 工具管理,拉取 SDK 需要配置安装 Repo 工具。 Repo is a tool built on top of Git. Repo helps manage many Git repositories, does the uploads to revision control systems, and automates parts of the development workflow. Repo is…

Redis数据结构:Zset类型全面解析

Redis,作为一种高性能的键值对数据库,因其丰富的数据类型和高效的性能而受到了广泛的关注和使用。在 Redis 的五种主要数据类型中,Zset(有序集合)类型可能是最复杂,但也是最强大的一种。Zset 不仅可以存储键…

Web 开发 Django 模板

上次为大家介绍了 Django 的模型和自带的管理工具,有了这个工具就可以全自动地根据模型创建后台管理界面,以供网站管理者更方便的管理网站数据。有了网站数据,那怎么样更方便又好看的展示给用户看呢?目前流行的 Web 框架基本都采用…

【24种设计模式】适配器模式(Adapter Pattern)

适配器模式(Adapter Pattern) 适配器模式(Adapter Pattern)是一种结构型设计模式,它允许将一个类的接口转换为客户端所期望的另一个接口。适配器模式使得原本因接口不兼容而无法一起工作的类可以协同工作。 适配器模…

ssm端游游戏账号销售管理系统源码和论文

ssm端游游戏账号销售管理系统源码和论文069 开发工具:idea 数据库mysql5.7 数据库链接工具:navcat,小海豚等 技术:ssm 摘 要 互联网发展至今,无论是其理论还是技术都已经成熟,而且它广泛参与在社会中的方方面面…

基于java swing和mysql实现的仓库商品管理系统(源码+数据库+运行指导视频)

一、项目简介 本项目是一套基于java swing和mysql实现的仓库商品管理系统,主要针对计算机相关专业的正在做毕设的学生与需要项目实战练习的Java学习者。 包含:项目源码、项目文档、数据库脚本等,该项目附带全部源码可作为毕设使用。 项目都经…

嵌入式学习笔记——ARM的编程模式和7种工作模式

ARM提供的指令集 ARM态-ARM指令集(32-bit) Thumb态-Thumb指令集(16-bit) Thumb2态-Thumb2指令集(16 & 32 bit) Thumb指令集是对ARM指令集的一个子集重新编码得到的,指令长度为16位。通常在…

Jtti:如何通过宝塔面板快速安装WordPress博客源码?

通过宝塔面板快速安装WordPress博客源码是非常简单的。宝塔面板提供了图形化界面,使安装过程变得直观和方便。以下是通过宝塔面板安装WordPress的步骤: 登录宝塔面板: 打开您的Web浏览器,访问您的宝塔面板地址(通常是 …

【Spring Boot】数据库持久层框架MyBatis — MyBatis简介

MyBatis简介 本节首先会介绍什么是ORM、什么是MyBatis、MyBatis的特点以及核心概念,最后介绍MyBatis是如何启动、如何加载配置文件的? 1.什么是ORM ORM(Object Relational Mapping,对象关系映射)是为了解决面向对象…

LoginPage.vue中的form

const form ref() const login async () > {await form.value.validate()const res await userLoginService(formModel.value)console.log(res)UserStore.setToken(res.data.token)ElMessage.success(登录成功)router.push(/) }<el-form:model"formModel":r…

高亮img、pdf重点部分(html2canvas、pdfjs-dist、react-pdf)

可用业务场景 报销单据审批中&#xff0c;高亮发票部分 需求 后台返回一张图片或者pdf、返回一组坐标&#xff0c;坐标类型[number,number,number,number]&#xff0c;分别代表了x、y、width、height。需要根据坐标在图片上高亮出来坐标位置。如下图 高亮的坐标是&#xff1…

Android 权限机制与及运行时权限申请示例

一、Android 权限机制 安装时权限声明 权限机制说明 安装软件时弹出软件所需要申请的全部权限&#xff0c;如果用户认可软件申请的权限&#xff0c;就会继续安装软件&#xff1b;如果用户不认可所申请的权限&#xff0c;就可以拒绝安装。 实现方式 在 AndroidManifest.mxl …