提前预警:本文适合Java新手阅读(老手可在评论区给下建议),希望大家看完能有所收获。

如何快速学Java

这里我以Java EE(Jakarta EE)/Java Web的经验来说哦。(都把你们看做是零基础入门的了)

学习Java EE(Jakarta EE)总体来说会有以下三大模块:

  • Java

  • 数据库

  • Web前端

在我看来,无论学习什么技术都好,在学习该项技术的细节之前都得知道:这项技术是什么,为什么我要学习这项技术,学习了这项技术有什么好处。

  • 看似好像我在说多余的话,但如果你在学习某项技术的时候无法回答上面的三个问题。再过几天,你很大程度上会忘记这项你所“学过”的技术。

  • 比如说,如何你连“为什么要用多线程”你都无法用通俗的话来解释清楚。即便你当时学习的时候知道多线程可以用xxx方式来创建,多线程的xxx的api。那再过两个月,人家问你”Java多线程有什么用啊?”。你想想你还能答什么,我认为你是记不住“多线程可以用xxx方式来创建、多线程的xxx的api”这些知识点了。

  • 再比如说,如果学习Spring时不知道IOC和new对象有什么区别,那我为啥不直接new对象而要那么麻烦去学Spring呢?

简单来说:如果你不知道学习某项技术是干嘛用的,那先不要学。

如果你是零基础学习Java并理解力不是爆棚的话,我建议以视频学习为主

可能你会看到这样类似的言论:

  • “看视频学习太慢了”
  • “直接看源码啊,源码就是最好的解释”
  • “有问题直接Google啊,用什么百度”
  • “最好的资料是官网文档”

但是,那都是对有经验的人或者高智商的人群来讲的。

如果是零基础普通人,看视频学习/看不懂源码/用百度/看中文博客来学习不丢人。

ps:如果看的视频讲师的语速不是特别快,建议以1.5或者1.75倍速观看。

关于视频资源:B站\慕课网公众号\混qq群\微信群(主要还是b站)

欢迎各位大佬进群共同交流学习,我们的交流分享群:1149778920 暗号:CSDN
博主在这里给大家整理了包括但不限于:JAVA基础和进阶类、Spring、Spring boot、Spring MVC、MyBatis、MySQL、JVM等各种资料有,免费分享给各位进群的小伙伴

学习Java基础

零基础学习Java的路线我简单总结为以下:

首先去官网下个JDK,按现在常用的版本JDK1.8就够学习了
下载地址:JDK1.8下载:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html

随后去下载现在Java常用的编辑器IDEA(也可以用eclipse,但现在IDEA的确是好用)
下载地址:IDEA下载:https://www.jetbrains.com/idea/

在学习Java基础时,我简单来说一下什么东西可以不碰:

  • &^|位运算符,++i和i++类似这种绕死人的语法
  • 内部类
  • AWT,SWING编程
  • 注解

需要深入理解的知识点:

  • 流程控制

  • 面向对象的概念

  • Java语法
    this指针、重写和重载、final、static等等这些基础的东西

  • 集合(包括泛型)
    常用的集合类

  • IO流
    IO流代码的编写

理解这些知识点,能够在有提示的情况下码出代码,但不要为了一些细节钻牛角尖

简单过一遍的知识:

异常
多线程

  • 网络编程
  • 反射机制

你得知道这个知识点是干嘛用的,为什么要学这个知识点,能看懂具体的代码!

对于上面所说深入理解的知识点,我个人是非常建议在学习期间写笔记(博客)的。如果你想写笔记的话,最好直接就用markdown语法来编写,而不是用word/简单的记事本。markdown语法非常好学

虽然是快速学习Java,但学完上面的估计得一个月了(:…

一个月发现都是面向控制台编程(console),输入输出一些数据来玩。

期间可能就学习IO的时候可以复制文件,修改文件名有点意思。但好日子就要来临了!

学习Java Web基础

首先我们可以学习一下Web前端的知识(此部分都简单过一下就好了)

HTML/CSS/JavaScript/jQuery
CSS框架(都有中文手册,很快就上手了,选一个自己喜欢的就好了)
BootStrap:https://www.bootcss.com/
Materialize:http://www.materializecss.cn/

到目前为止,学完上面这些可以搭建“能看”的静态网页了。曾经看过一段话来总结上面的技术:

“HTML是名词,CSS是形容词,JavaScript是动词”

随后学习JavaWeb的路线如下:

  • Tomcat(简单过一下)
  • XML/注解(简单过一下)
  • Servlet(重点理解)
  • HTTP协议(重点理解)
  • Filter过滤器(重点理解)
  • Listener监听器(简单过一下)
  • JSP(简单过一下)
  • AJAX、JSON(简单过一下)

基于上面的学习,起码已经可以使用request对象来接收前端发送过来的数据,使用response对象将Java后端的数据返回给前端,使用Filter拦截器来处理中文乱码问题(Tomcat默认的编码是ISO-88591)。总的来说已经可以实现前后端交互了!

学习数据库

数据库这里指的是关系型数据库,一般我们以MySQL来入门就足够了。

在学习期间,其实很多时间都耗费在配置环境上面,比如我之前安装JDK,安装MySQL,安装Oracle就耗费了不少时间。(安装这里网上教程较多,这里我不过多赘述)

主要学习SQL的基本使用吧:

创建表(create table)
增删改查(insert,delete,update,select)
对于存储过程、触发器这些了解一下即可
对于索引、锁后面再学(此部分很重要,但以快速入门来说,可以先不看)

学习Java连接数据库(JDBC)

到这里,我们Java Web、数据库、Web前端的基础都已经基本学完了,但此时Java和数据库是相互独立的。我们想要以程序的方式来对数据库的数据进行操作,那就要学习一下Java连接数据库(JDBC)。

JDBC这项技术并不难呀,就是模板代码,来来去去就几个步骤:

  • 导入MySQL或者Oracle驱动包
  • 装载数据库驱动程序
  • 获取到与数据库连接
  • 获取可以执行SQL语句的对象
  • 执行SQL语句
  • 关闭连接

由于这些代码可能会重复出现,那我们可以学习一下DbUtils这个组件:可以帮我们减少编写JDBC的模板代码。

项目管理和框架的学习

经过上面的学习,已经是可以在本地写一个Web项目了。

  • 页面框架使用BootStrap/Materialize框架来搭好

  • 请求处理交由Servlet,返回的数据可以通过AJAX或者使用JSP,DAO层可以使用DbUtils。

  • 数据保存在MySQL中

为了让写代码变得更爽,我建议用半天学一下Maven(项目管理工具),用几天学一下SpringBoot。

从Servlet直接跳到SpringBoot可能有点难理解,但多搞几天我相信还是可以的…

Linux学习

最后,我们在本地上写完的项目想要让其他人都看得见,一般都会部署在Linux环境下的。(此部分的学习可以等到将项目写完,想要部署项目才学习)

主要学习一下Linux的基本命令和部署环境。

总结

总结一下我认为学习Java的路线:

  • Java基础–>流程控制–>面向对象(包括Java语法)–>Java集合–>Java IO流–>异常–>多线程–>网络编程–>反射

  • JavaWeb基础–>HTML/CSS/JavaScript/jQuery–>Tomcat–>XML/注解->Servlet–>HTTP–>Filter过滤器和监听器–>JSP–>AJAX/JSON–>数据库(MySQL)–>JDBC和DbUtils

  • 项目管理和框架–>Maven–>SpringBoot

  • Linux基本命令

最后我们的项目是这样的:

  • 以Maven来管理我们的项目

  • 前端通过BootStrap来搭建页面框架

  • SpringBoot来搭建Java后端环境,SpringMVC处理前端请求(SpringBoot整合了)

  • DAO层使用DbUtils组件来完成,MySQL作为数据库

当然了,我的Java路线不一定就是对的,我这里只是给出一种路线。

再次说明:这套路线是以“快速”学习Java的,如果你想要找到一份好工作,上面的知识点还是有点不够的。。

博主在这里给大家发个福利~
这里整理了20多家公司的真实面试经历,以及各种关于Spring、Spring boot、Spring MVC、MyBatis、MySQL、JVM等知识点,如果有需要的小伙伴可以加群1149778920 来自行领取 暗号:CSDN
以下是部分资料截图(所有资料均已整合成文档,pdf压缩打包处理)。

2021不多BB不走弯路,我认为我这份Java学习路线是适合绝大多数人的相关推荐

  1. 不多BB,我认为这份Java学习路线适合绝大多数想学习Java的人

    前言 Java大佬绕路,这是适合Java入门的 如果你现在正在为怎么学Java而苦恼,那你可以仔细看看这个! 一门永不过时的编程语言--Java 软件开发. 首先上图 总共分为4个阶段 阶段一 基础加 ...

  2. Java学习路线!2021最新Java开发面试解答!全套教学资料

    前言 过去十多年互联网产业的高速发展,在给社会带来深刻变革的同时,也催生了服务架构的演进:从传统的单体应用到面向服务的SOA,再到现今主流的微服务架构,而 Apache Dubbo就是微服务领域中的先 ...

  3. Java学习路线!java大数据开发心得,2021最新版!

    NO1:说说zookeeper是什么? ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现(Chubby是不开源的),它是集群的管理者,监视 ...

  4. 课工场java新手基础教程_Java新手学习路线,学Java不走弯路

    Java新手学习路线,学Java不走弯路 很多人都会有一个疑问,就是学习Java能看懂,但是不会写,所以学习Java一定要掌握一个有效率的学习方法,一个适合自己的学习方法,作为一个新人,千万不要自己瞎 ...

  5. JAVA学习之路 不走弯路,就是捷径

    [霄潇] 软件开发之路是充满荆棘与挑战之路,也是充满希望之路.JAVA学习也是如此,没有捷径可走.梦想像<天龙八部>中虚竹一样被无崖子醍醐灌顶而轻松获得一甲子功力,是很不现实的.每天仰天大 ...

  6. 2021最新Android开发者学习路线,已整理成文档

    前情 首先介绍一下自己的情况吧,由于当年高中年少轻狂,不努力,差二本线16分.我自己也没有意识到学历的区别,最终听了家里的安排上了一个专科,电气专业. 现在想想都很后悔,当年为什么没有自己的主见,如果 ...

  7. JAVA学习之路:不走弯路,就是捷径(一)

      0.引言 在ChinaITLAB导师制辅导中,笔者发现问得最多的问题莫过于"如何学习编程?JAVA该如何学习?".类似的问题回答多了,难免会感觉厌烦,就萌生了写下本文的想法.到 ...

  8. 2021年全新Java学习路线图

    第一阶段:Java语言入门到精通 学前导读: 学习任何一门编程语言,首先要学习的是基础语法,开启Java学习的第一步,当然就是深入掌握计算机基础.编程基础语法,面向对象,集合.IO流.线程.并发.异常 ...

  9. 2021最全大数据学习路线(建议收藏)

    个人简介:非科班双一流硕士,CAE仿真方向转行大数据,现杭州某大厂大数据工程师! 我可以给你提供最全的[大数据学习路线]:帮助你搭建大数据知识体系,从入门到精通:亲自指导你大数据工程师面试的简历该如何 ...

最新文章

  1. 脑科学研究:对于学习来说,休息可能与练习同样重要...
  2. android绘制环形进度_android 圆环进度view
  3. 和linux关系_Linux内核Page Cache和Buffer Cache关系及演化历史
  4. open session and Hibernate事务处理机制
  5. equals方法重写详解
  6. 危!我用python克隆了女朋友的声音!
  7. 使用VS2010代码分析功能增强ASP.NET应“.NET研究”用程序安全
  8. Jetty与Tomcat的区别 转
  9. What's new document web part for SharePoint v1.1 [Free]
  10. vue项目下,webpack.js/package.json配置
  11. 算法与数据结构 第3章 高级排序算法上 归并算法
  12. 百度编辑器ueditor 的 submit 表单提交
  13. Hybird app开发入门之Native和H5页面交互原理
  14. QQ互联开发者信息认证
  15. 用python画滑稽表情_用Python画QQ表情中的滑稽脸
  16. 可批量查询企业工商数据信息的API
  17. 看到这类代码,别再说你不认识了!手把手带你认识初阶结构体(结构体类型的声明、初始化、成员访问与传参,全在这篇文章里)
  18. 文本编辑器 - 同时编辑多行
  19. antd自定义样式主题
  20. 【NOIP2018模拟赛2018.8.28】video

热门文章

  1. 【MFC】MFC基础篇(1)
  2. WPF中使用浏览器控件WebBrowser
  3. 【视频处理】视频篡改检测经典算法原理部分
  4. 双向 LSTM-CRF 实现命名实体识别
  5. 理解这首诗歌:再次之前
  6. Unity3D学习之旅5-RPG游戏-更新与踩坑实录
  7. Ladder Side-Tuning:预训练模型的“过墙梯”
  8. c语言链表按成绩区间查询,C语言写的学生成绩管理系统(链表)
  9. 跑linux主机配置,在 StorSimple Linux 主机上配置 MPIO | Microsoft Docs
  10. 2022危险化学品生产单位安全生产管理人员特种作业证考试题库及答案