Java课程学习路线图

2019年11月29日 阅读数:30
这篇文章主要向大家介绍Java课程学习路线图,主要内容包括基础应用、实用技巧、原理机制等方面,希望对大家有所帮助。

Java是一门面向对象编程语言,不只吸取了C++语言的各类优势,还摒弃了C++里难以理解的多继承、指针等概念,所以Java语言具备功能强大和简单易用两个特征。千锋Java课程紧跟热门互联网行业,采用真实企业项目实战,并特设专业技能提高课,让学员保持长足的成长。css

第一阶段java

1、JavaSE编程基础linux

DOS经常使用命令nginx

安装JDK、设置环境变量git

DOS系统编译、执行Java程序web

Java的注释面试

标识符、标识符的命名规范ajax

Java 关键字redis

Java的数据类型算法

变量的定义及初始化

Java的运算符

表达式

转义字符

运算符的优先级

类型转换

Java分支if...else

多重if、嵌套if

Java switch

Switch vs if

Java循环 for、while 、doWhile

循环的嵌套

break、continue、return

方法的定义

方法的形参和实参

无返回值的方法

有返回值的方法

方法的重载

2、Java数组

Java 数组的定义

数组的静态赋值

数组的动态赋值

数组单个元素的访问

数组的遍历访问

数组的加强for循环

数组的排序

数组的顺序查找

数组的二分法查找

命令行参数args的使用

可变参数的应用

Arrays工具类的使用

二维数组的使用

3、Java面向对象

面向对象的分析与设计

面向对象与面向过程的区别

Java与面向对象

类的定义

对象的定义

类中成员变量及方法的定义

构造方法的定义和调用

构造方法的重载

面向对象的封装特性

this调用属性、方法、构造方法

局部变量和成员变量的做用域问题

static静态属性、方法、代码块

工具类的概念及工具类的制做

super关键字的使用及理解

Java中访问权限控制机制

继承中构造方法的细节

方法的重写

equals及toString方法的正确理解

Java中的包机制

抽象类,接口,多态

对象的转型

final修饰类、属性、方法

抽象类,接口

多态机制

内部类

经过内部类制做性能检测工具

Java的内存分析

4、经常使用基础类

经常使用数据类型的包装类

String、StringBuffer、StringBuilder

Date的使用

SimpleDataFormate对日期和字符
串之间的转换处理

Calendar日历类的使用

Math经常使用方法

Random类

Runtime类

System 类

java8新特性

5、集合

集合框架体系介绍

集合框架与数组的对比

集合框架之Collection接口

集合框架之List接口

ArrayList和LinkedList的使用

深刻源码探究ArrayList和LinkedList
的工做原理

迭代器的工做原理

迭代器的使用

集合框架之Set

HashSet和TreeSet的使用

深刻源码探究HashSet和TreeSet
的工做原理

HashMap和TreeMap的使用

分析Map和Set的之间的关系

Collections工具类

6、异常处理

Java的异常体系

异常的概念及分类

异常的处理方式

异常设计原则

自定义异常

7、线程和I/O

I/O

NIO

文件操做

多线程

线程池

同步

线程调度

多线程下载

网络http、socket

基于HTTP协议访问网络资源、XML解析

文件的下载

ThreadLocal

8、项目

FTP服务器、多人聊天服务器

第二阶段

1、HTML5

HTML的做用

全局标签

绝对路径与相对路径

常见标签

字符集

表单标签

布局指定的网页

2、CSS3

css声明类型

常见的各类属性

圆角属性:border-radius的使用

阴影属性:box-shadow的用法

背景属性扩展:多背景应用

新的颜色表示方式:HSLA色轮模式

浮动

完成本身的初级课页面实战

3、Javascript

JavaScript基本语法

JavaScript数据类型

JavaScript对象和经常使用对象

history对象

location对象

bom对象

表单对象

DOM对象

window对象

经常使用事件

选项卡、幻灯片、贪吃蛇、
瀑布流各类特效

4、MySQL使用

Mysql数据库

MySql命令行客户端的使用

MySql图形化客户端的使用

SQL语句介绍

DDL

DML

DQL

多表的联合查询

子查询

排序、聚合、分组

5、JDBC链接池

JDBC的介绍

采用JDBC实现CRUD

采用PrepareStatement防止SQL注入,提升安全性

6、Servlet

Tomcat与eclipse的集成开发

什么是Servlet

Servlet接收客户端请求信息

Servlet响应客户端信息

Servlet的生命周期

什么是JSP

JSP的内置对象

透析JSP的本质

JSTL+EL

MVC介绍

分层的重要性

Mysql的事务特性

MySql的事务实现

Session的使用

Cookie的使用

实现系统的安全控制

DBCP链接池的使用

C3P0链接池的使用

DBUils

实现用户的自动登陆

文件的上传

文件的下载

过滤器解决编码问题

过滤器解决安全验证问题

监听器

反射、注解、泛型

7、MVC

设计模式

ORM原理

自定义框架

8、ajax

Ajax的工做原理

JSON解析

Ajax 数据格式(XML格式、HTML格式、JSON格式、各类格式对比)

使用 jQuery 实现 Ajax(load()方法、$.get()方法、$.post()方法、序列化、Ajax应用)

聊天室小实例

9、jQuery

jQuery选择器

jQuery的经常使用事件

事件冒泡

事件委派

jQuery中的动化

模拟操做

jQuery综合实例

10、BootStrap

响应式设计

BootStrap安装

Bootstrap 组件

进度条和列表组件

BootStrap综合实例

11、项目

讲解项目开发流程

项目简介

项目功能演示

项目功能实现分析

数据库设计分析

项目架构设计分析

实现网站首页的商品展现

实现商品详情页面

实现购物车功能

实现个人订单管理

项目验收

第三阶段云计算体系

一、框架和Maven

为何用框架

流行的框架

Maven概述

使用Maven的优点

maven的一次构建

依赖管理

安装配置介绍.使用Maven核心概念介绍( 坐标、依赖、仓库、插件、生命周期等)

Maven与第三方Elicpse整合及如何在Eclipse中使用Maven、Maven私服Nexus的安装使用

如何使用Maven构建Web应用

使用Maven构建SSH应用

使用Maven进行多模块和继承使用

2、Hibernate5

ORM思想

hibernate5与JPA关系介绍

hibernate.cfg.xml配置

hbm.xml映射文件详解

主键生成策略 PO对象三种状态分析与切换

hibernate5一级缓存分析与测试

Hibernate5高级映射技术

Hibernate5多表联合查询

Hibernate5的性能优化

hibernate4及hibernate3区别及新特性介绍

3、JPA

JPA 概述

JPA 注解

JPA 相关 API

JPA 映射

JPQL

二级缓存

Spring 整合 JPA

4、Struts2

Struts2框架介绍

工做原理及架构分析

快速掌握Struts2开发模式

Struts.xml详解

通配符的配置模式

ActionContext及ServletActionContext使用

类型自动转换机制

多模块的开发模式

单文件上传

多文件上传

文件下载

拦截器的介绍

默认拦截器

自定义拦截器

Token机制

5、Spring4

框架原理介绍

框架环境搭建

快速入门

建立Bean的方式及实现原理

Bean种类

Bean生命周期

Bean的做用域

Bean的注值方式

SpEL

整合Junit测试

Web项目集成spring

注解装配Bean

AOP思想

AOP原理解剖

传统方式实现AOP开发

AspectJ介绍及实现AOP开发

6、SpringMVC

Spring MVC 概述

使用 @RequestMapping映射请求

请求处理方法签名概述

处理方法签名详细说明

使用 HttpMessageConverter

处理模型数据

数据绑定流程剖析

数据转换

数据格式化

数据校验

视图和视图解析器

处理方法的数据绑定

7、博客、论坛项目整合和富文本编辑器

博客或论坛项目在面试中的意义

如何使用Maven构建框架开始写项目

业务流程

富文本编辑器整合

先后台的业务实现

8、MyBatis

安装和配置MyBatis

使用映射语句

执行非查询语句

使用高级查询技术

事务

使用动态SQL

使用高速缓存提升性能

MyBatis数据访问对象

DAO使用进阶

9、项目整合

使用SSM整合博客或论坛项目

体现MyBatis的优越性

使用对比

10、SpringData

Spring Data 概述

Repository

CrudRepository

PagingAndSortingRepository

JpaRepository

条件查询

使用@Query自定义查询

@Query 与 @Modifying 执行更新操做

索引参数与命名参数

用@Query来指定本地查询

为某一个 Repository 上添加自定义方法

全部的 Repository 都添加自实现的方法

11、Redis、MongoDB(二选一)

redis安装

redis数据类型

redis操做

java操做redis

redis写个带分页好友关系处理系统

Linux平台安装MongDB

MongDB插入、更新、删除、查询文档、MongoDB条件操做符

MongoDB排序、索引、聚合、复制、分片

MongoDB与java、MongoDB数据库引用

java写一个MongoDB的操做

12、SpringSecurity(二选一)

增强URL访问安全

登陆到Web应用

验证用户

增强方法调用的安全

作出访问控制决策

处理视图中的安全性

处理领域对象安全性

13、Shiro(二选一)

权限基础

Shiro 概述

Shiro 配置基础

Permissions

Authentication

Authorization

Role

编程受权

Realm

Realms的认证明现

Realms的受权实现

Spring 集成 Shiro

Spring 集成 Shiro

基于注解的受权

14、WebService

WebService介绍

WebService的应用场景

15、WebService

http协议

RestFul规范

postman使用

spring 实现 RestFul

第四阶段

1、亿级并发架构演进

架构演进特色

大并发架构

微服务

2、Linux基础

文件处理命令

权限管理命令

帮助命令

文件搜索命令

压缩解压命令

命令使用技巧

VIM使用

软件包管理

用户和用户组管理

服务和进程

基本网络设置

云服务器搭建和使用

2、搭建tomcat环境

在云服务器下搭建tomcat和MySQL服务器

3、MySQL主从

MySQL主从和binlog的配置

4、MySQL主从

nginx服务器的优点

nginx服务器配置

什么是反向代理

什么是负载均衡

负载均衡算法

构建数十台服务器的负载均衡环境

5、SSL证书配置

为何使用SSL证书

RSA算法、DES算法

Let's Encrypt证书申请

证书续期

6、keepalived双活

不间断服务的重要性

keepalived原理

OSI七层模型和TCP/IP四层模型

配置keepalived服务

7、MySQL高级

ACID和MySQL的实现原理

SQL优化技巧

MySQL分区

Explain分析

8、memcached

MySQL引擎

memcached优点

memcached与Java配使用用

memcached分布式处理

9、elasticsearch

为何使用全文索引

elasticsearch与solr的对对

实时索引

分布式elasticsearch

写一个本身的搜索引擎

10、ActiveMQ队列

队列应用场景

经常使用的队列

服务器队列

服务器的架设

压力测试

Java中使用队列服务器

11、MyCat分库分表技术

MyCat介绍

分库分开技术讲解

其余的数据库中间件

配置与自动分表

12、Rpc和Dubbo

分布式服务框架简介

Dubbo主要核心部件

Dubbo-RPC基本功能

Dubbo-高级功能

远程方法调用

软负载均衡及容错机制

linux 上 Dubbo 的部署

13、svn & git & Jenkins持续集成

svn介绍

svn服务器和客户搭建配置

如何使用svn

多人一块儿进行冲突解决

git经常使用命令

git的web hooks

为何要使用持续集成

持续集成与git 的web hooks配使使用

14、echarts图表插件

图表介绍和选择什么样的图表

5分钟快速上手

经常使用API和模块

移动端自适应

15、UML和经常使用工具的使用

UML的做用

UML经常使用工具的使用

UML的3个要素

UML的3个基本构造块

事物是对模型中最具备表明性的成分的抽象

5种图定义

UML的应用领域

16、Hadoop

大数据的应用场景

Hadoop架设

Hadoop单机配置

Hadoop伪分布式环境

Hadoop集群环境

HDFS的使用和配置

分治思想

分治思想处理数据

MadReduce原理

MapReduce架设和使用

云服务器上提供的大数据工具

17、亿人同时在线的抢票系统

大并发系统的应用

大并发系统的分析

大并发系统的设计

大并发系统的开发

手把手带着学员完成大并发系统

18、综合项目实战

15个大型项目选择

各类项目特色分析

项目设计

项目分组

选择框架后台搭建

使用Maven构建项目

项目开发

压力测试

webhooks项目自动部署

面试中常问到的项目问题

项目bug收集和解决

阿里云、腾讯云项目上线

项目验收

项目答辩