HTML三十分钟快速入门:
    https://blog.csdn.net/qq_26122557/article/details/81076378

    作者:Java3y 链接:https://www.zhihu.com/question/336433585/answer/761021778

    来源:知乎

    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

    2.1学习Java基础

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

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

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

    需要深入理解的知识点:

    • 流程控制
    • 面向对象的概念
    • Java语法

      • this指针、重写和重载、final、static等等这些基础的东西
    • 集合(包括泛型)

      • 常用的集合类
    • IO流

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

    简单过一遍的知识:

    • 异常
    • 多线程
    • 网络编程
    • 反射机制
    • (你得知道这个知识点是干嘛用的,为什么要学这个知识点,能看懂具体的代码!)

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

    markdown语法非常好学,几分钟跟着就可以学习了,几乎所有的it博客网站都支持markdown

    如果喜欢画思维导图的,我这里推荐processOn就可以了。无需下载Xmind这么麻烦了:

    有的时候并不需要使用IDEA打开一个.java或者.xml这样的文件,可以使用notepad++记事本:

    学会科学上网和使用Chrome浏览器,比如说下载拦截广告插件,英语翻译插件

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

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

    草稿本 待整合 - 图1草稿本 待整合 - 图2

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

    2.2学习Java Web基础

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

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

    • HTML是名词,CSS是形容词,JavaScript是动词

    随后学习JavaWeb的路线如下:

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

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

    2.3学习数据库

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

    在学习期间,其实很多时间都耗费在配置环境上面,比如我之前安装JDK,安装MySQL,安装Oracle就耗费了不少时间。后来我也将其写成博客,需要重新安装的时候翻一下博客就好了。

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

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

    草稿本 待整合 - 图3草稿本 待整合 - 图4

    2.4学习Java连接数据库(JDBC)

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

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

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

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

    2.6项目管理和框架的学习

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

    • 页面框架使用BootStrap/Materialize框架来搭好
    • 请求处理交由Servlet,返回的数据可以通过AJAX或者使用JSP,DAO层可以使用DbUtils。
    • 数据保存在MySQL中

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

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

    2.7Linux学习

    最后,我们在本地上写完的项目想要让其他人都看得见,一般都会部署在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的,如果你想要找到一份好工作,上面的知识点是不够的