学习路线

用于view的jsp过时了,现在view一般用【模板】或【完全静态+ajax+json】了。

1.1Java基础

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

  • &^|位运算符,++i和i++类似这种绕死人的语法

  • 内部类

  • AWT,SWING编程

  • 注解

需要深入理解的知识点:

  • 流程控制

  • 面向对象的概念

  • Java语法

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

  • 集合(包括泛型)

  • 常用的集合类

  • IO流

  • IO流代码的编写

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

简单过一遍的知识:

  • 异常

  • 多线程

  • 网络编程

  • 反射机制

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

1.2 Java web基础

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

  • HTML/CSS/JavaScript/jQuery

  • CSS框架(都有中文手册,很快就上手了,选一个自己喜欢的就好了):

  • BootStrap:http://www.bootcss.com/

  • Materialize:http://www.materializecss.cn/

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

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

随后学习JavaWeb的路线如下:

  • Tomcat(简单过一下)

  • XML/注解(简单过一下)

  • Servlet(重点理解)

  • HTTP协议(重点理解)

  • Filter过滤器(重点理解)

  • Listener监听器(简单过一下)

  • JSP(简单过一下)

  • AJAX、JSON(简单过一下)

学习路线_第1张图片
image

Servlet知识点

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

1.3 学习数据库

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

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

  • 比如MySQL安装教程:https://segmentfault.com/a/1190000013530782

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

  • 创建表(create table)

  • 增删改查(insert,delete,update,select)

  • 对于存储过程、触发器这些了解一下即可

  • 对于索引、锁后面再学(此部分很重要,但以快速入门来说,可以先不看)

学习路线_第2张图片
image

MySQL基本语法

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

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

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

  • 导入MySQL或者Oracle驱动包

  • 装载数据库驱动程序

  • 获取到与数据库连接

  • 获取可以执行SQL语句的对象

  • 执行SQL语句

  • 关闭连接

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

1.5 项目管理和框架的学习

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

页面框架使用BootStrap/Materialize框架来搭好
请求处理交由Servlet,返回的数据可以通过AJAX或者使用JSP,DAO层可以使用DbUtils。
数据保存在MySQL中
为了让写代码变得更爽,我建议用半天学一下Maven(项目管理工具),用几天学一下SpringBoot。

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

1.6 Linux学习

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

我是不推荐使用虚拟机再搞Linux的,直接买一台方便很多

如果是学生的话,一个月的学生版也就10块一个月。
如果是转行的大哥话,现在阿里云双十一有优惠,买起来就很便宜了。
优惠链接:https://m.aliyun.com/act/team1111/#/share?params=N.FF7yxCciiM.pfn5xpli

总结

总结一下我认为学习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作为数据库

你可能感兴趣的:(学习路线)