Java学习指南

1 Java基础阶段

1.1 Java语言基础

1.2 MySQL基础

  • MySQL基础(一)
    • 1 为什么要学习数据库?
    • 2 数据库的相关概念 。
    • 3 数据库的特点 。
    • 4 MySQL简介 。
    • 5 MySQL数据库的使用 。
    • 6 SQL语言的分类 。
    • 7 准备工作 。
    • 8 基础查询。
  • MySQL基础(二)
    • 1 条件查询 。
    • 2 排序查询 。
    • 3 常见函数 。
    • 4 分组查询 。
    • 5 连接查询。
  • MySQL基础(三)
    • 1 子查询 。
    • 2 分页查询 。
    • 3 union联合查询。
  • MySQL基础(四)
    • 1 DML 。
    • 2 DDL。
  • MySQL基础(五)
    • 1 约束 。
    • 2 标识列。
  • MySQL基础(六)
    • 1 事务 。
    • 2 视图(了解)。
  • MySQL基础(七)
    • 1 变量(了解)。
    • 2 存储过程和函数(了解)。
    • 3 流程控制结构(了解)。

1.3 NIO

  • NIO
    • 1 Java NIO简介。
    • 2 Java NIO和IO的主要区别。
    • 3 缓冲区(Buffer)和通道(Channel)。
    • 4 NIO的非阻塞式网络通信。
    • 5 Java NIO2(Path、Paths和Files)。

1.4 线程池

1.5 并发编程

1.6 JDK8+

  • JDK8
    • 1 JavaSE的发展历史。
    • 2 了解Open JDK和Oracle JDK 。
    • 3 JDK8新特性。

1.7 数据结构和算法

1.8 设计模式

1.9 JDBC

2 JavaWeb阶段

3 JavaEE阶段

3.1 Spring5

  • Spring5
    • 1 Spring的概念。
    • 2 IOC容器。
    • 3 AOP。
    • 4 JdbcTemplate 。
    • 5 事务管理。
    • 6 Spring5新特性。

3.2 Mybatis

  • Mybatis的简介
    • 1 Mybatis的简介
    • 2 Mybatis历史
    • 3 为什么要使用Mybatis?
    • 4 下载地址。
  • Mybatis的入门
    • 1 Mybatis入门步骤。
    • 2 Mybatis-HelloWorld。
  • Mybatis的全局配置文件
    • 1 概述。
    • 2 properties(了解)。
    • 3 settings。
    • 4 typeAliases(别名处理器)。
    • 5 typeHandlers(类型处理器)。
    • 6 plugins(插件)。
    • 7 environments(环境)。
    • 8 databaseIdProvider。
    • 9 mapper(映射)。
  • Mybatis的映射文件
    • 1 增删改查。
    • 2 INSERT获取自增主键的值。
    • 3 INSERT获取非自增主键的值。
    • 4 参数处理。
    • 5 select元素。
  • Mybatis的动态SQL
    • 1 简介。
    • 2 环境搭建。
    • 3 if判断。
    • 4 where查询条件。
    • 5 trim自定义字符串截取。
    • 6 choose分支选择。
    • 7 set更新。
    • 8 foreach遍历。
    • 9 MySQL下的foreach批量插入的两种方式。
    • 10 Oracle下的foreach批量插入的两种方式。
    • 11 内置参数。
    • 12 bind绑定。
    • 13 抽取可重用的SQL片段。
  • Mybatis的缓存机制
    • 1 Mybatis的缓存机制介绍。
    • 2 准备工作。
    • 3 一级缓存。
    • 4 二级缓存。
  • Mybatis和Spring的整合
    • 1 准备工作。
    • 2 配置。
    • 3 编码。
  • Mybatis的逆向工程
    • 1 简介。
    • 2 MBG逆向工程。
  • Mybatis的工作原理
    • 1 Mybatis框架分层架构。
    • 2 SqlSessionFactory的初始化。
    • 3 openSession()获取SqlSession对象。
    • 4 getMapper获取接口的代理对象。
    • 5 查询流程。
  • Mybatis的插件开发
    • 1 插件原理。
    • 2 插件开发步骤及应用示例。
  • Mybatis的注解开发
    • 1 前言。
    • 2 环境准备。
    • 3 Mybatis注解实现常用的CRUD。
    • 4 Mybatis注解实现一对一关联查询。
    • 5 Mybatis注解实现一对多关联查询。
  • Mybatis的扩展
    • 1 Mybatis分页插件--PageHelper。
    • 2 批量操作。
    • 3 自定义类型处理器。

3.3 SpringMVC

  • SpringMVC
    • 1 SpringMVC概述。
    • 2 SpringMVC的入门。
    • 3 请求参数的绑定。
    • 4 常用注解。
    • 5 响应数据和结果视图。
    • 6 文件上传。
    • 7 拦截器。
    • 8 异常处理。

3.4 Spring注解驱动开发

  • Spring注解驱动开发之IOC
    • 1 设计模式-工厂模式。
    • 2 IOC和DI。
    • 3 Spring注解驱动入门。
    • 4 IOC常用注解分析。
    • 5 Spring高级之IOC的深入剖析。
  • Spring注解驱动开发之AOP
    • 1 设计模式--代理模式。
    • 2 AOP思想及实现原理。
    • 3 Spring注解驱动AOP开发入门。
    • 4 AOP常用注解分析。
    • 5 AOP注解执行过程及核心对象的分析。
  • Spring注解驱动开发之TX
    • 1 Spring对JDBC的封装。
    • 2 Spring中的事务。
  • Spring注解驱动开发之MVC
    • 1 SpringMVC注解驱动开发。
    • 2 常用注解说明。
    • 3 SpringMVC中各组件详解及源码分析。
    • 4 拦截器的执行时机和调用过程。
    • 5 类型转换器和异常处理器。
    • 6 SpringMVC中的文件上传。

3.5 Docker

  • 初识Docker
    • 1 Docker出现的背景。
    • 2 Docker的概念。
  • Docker的安装
    • 1 前提说明。
    • 2 Docker的组成。
    • 3 Docker的安装。
    • 4 卸载Docker。
    • 5 配置阿里云镜像加速。
    • 6 通过脚本安装。
  • Docker命令
    • 1 Docker进程相关命令。
    • 2 镜像相关命令。
    • 3 容器相关命令。
    • 4 常用命令。
  • Docker容器的数据卷
    • 1 数据卷。
    • 2 数据卷容器。
  • Docker应用部署
    • 1 Docker安装MySQL。
    • 2 Docker安装Tomcat。
    • 3 Docker安装Nginx。
    • 4 Docker安装Redis。
  • Dockerfile
    • 1 镜像原理。
    • 2 镜像制作。
  • Docker服务编排
    • 1 服务编排概念。
    • 2 Docker Compose概念。
    • 3 Docker Compose的安装和卸载。
    • 4 Docker Compose的应用示例。
  • Docker相关概念
    • 1 容器。
    • 2 Docker容器虚拟化 VS 传统虚拟机。
  • Docker Swarm
    • 1 Docker Swarm介绍。
    • 2 Docker Swarm特点。
    • 3 Docker Swarm架构。
    • 4 Docker Swarm的使用。
  • Docker仓库
    • 1 官方仓库构建。
    • 2 Harbor仓库构建。
  • Docker的网络管理
    • 1 Docker网络通讯。
    • 2 Docker网络模式修改。
    • 3 网络隔离。

3.6 SpringBoot核心技术篇

  • SpringBoot入门
    • 1 简介。
    • 2 微服务。
    • 3 入门案例。
    • 4 HelloWorld探究。
  • SpringBoot配置
    • 1 配置文件。
    • 2 YAML语法。
    • 3 YAML配置文件值注入。
    • 4 配置文件占位符。
    • 5 profile多环境配置。
    • 6 配置文件加载位置。
    • 7 外部配置加载顺序。
    • 8 自动配置原理。
  • SpringBoot和日志
    • 1 市面上的日志框架。
    • 2 SLF4j的使用。
    • 3 SpringBoot日志关系。
    • 4 日志使用。
    • 5 切换日志框架。
  • SpringBoot和web开发
    • 1 简介。
    • 2 SpringBoot对静态资源的映射规则。
    • 3 模板引擎。
    • 4 SpringMVC自动配置。
    • 5 如何修改SpringBoot的默认配置。
    • 6 错误处理机制。
    • 7 配置嵌入式Servlet容器。
  • SpringBoot和数据访问
    • 1 简介。
    • 2 整合基本JDBC和数据源。
    • 3 整合Mybatis。
    • 4 整合JPA。
  • SpringBoot启动配置原理
    • 1 启动流程。
    • 2 总结事件回调机制。
  • SpringBoot自定义starters
    • 1 自定义starter的原理。
    • 2 自定义starter。

3.7 SpringBoot高级整合篇

3.8 Nginx

3.9 SpringSecurity

4 JavaEE高级阶段

4.1 Activiti7

4.2 Zookeeper

  • zookeeper01
    • 1 zookeeper简介。
    • 2 zookeeper的数据模型。
    • 3 zookeeper单机安装。
    • 4 zookeeper常用shell命令。
    • 5 zookeeper的ACL(Access Control List)权限控制。
    • 6 zookeeper的Java API。
  • zookeeper02
    • 1 zookeeper的事件监听机制。
    • 2 zookeeper集群搭建。
    • 3 一致性协议:ZAB协议。
    • 4 zookeeper的leader选举。
    • 5 observer角色及其配置。
    • 6 zookeeper API连接集群。
  • zookeeper03
    • 1 zookeeper开源客户端curator介绍。
    • 2 zookeeper四字监控命令。
    • 3 zookeeper图形化的客户端工具(ZooInspector)。

4.3 Dubbo

4.4 Redis

4.5 MongoDB

4.6 K8s

4.7 JVM

4.8 RabbitMQ

4.9 RocketMQ

4.10 MySQL高级

4.11 Mycat

4.12 ShardingSphere

4.13 Java安全密码学

4.14 SpringCloud

  • 微服务基础知识
    • 1 系统架构的演变。
    • 2 分布式核心知识。
    • 3 常见微服务框架。
  • SpringCloud概述
    • 1 微服务中的相关概念。
    • 2 SpringCloud。
  • 模拟微服务环境
    • 1 数据库表。
    • 2 搭建环境。
    • 3 搭建商品微服务。
    • 4 搭建订单微服务。
    • 5 分析模拟微服务中存在的问题。
  • 服务注册Eureka基础
    • 1 微服务的注册中心。
    • 2 Eureka的概述。
    • 3 Eureka的使用步骤。
    • 4 搭建Eureka Server(注册中心)。
    • 5 服务注册到Eureka注册中心。
    • 6 Eureka的元数据。
    • 7 Eureka中的自我保护。
  • 服务注册Eureka高级
    • 1 搭建Eureka Server高可用集群。
    • 2 Eureka中的常见问题。
    • 3 Eureka的源码解析。
  • Eureka替换方案Consul
    • 1 Eureka闭源的影响。
    • 2 Consul简介。
    • 3 Consul的基本使用。
    • 4 基于Consul的服务注册。
    • 5 Consul集群的搭建。
  • Eureka替换方案Zookeeper
    • 1 Zookeeper简介。
    • 2 服务提供者注册到Zookeeper。
    • 3 服务消费者注册到Zookeeper。
  • 负载均衡Ribbon基础
    • 1 前言。
    • 2 Ribbon基础。
  • 负载均衡Ribbon高级
    • 1 负载均衡概述。
    • 2 基于Ribbon实现负载均衡。
    • 3 Ribbon中负载均衡的源码分析。
  • 服务调用Feign入门
    • 1 前言。
    • 2 Feign简介。
    • 3 基于Feign的服务调用。
    • 4 Feign和Ribbon的联系。
    • 5 负载均衡。
  • 服务调用Feign高级
    • 1 Feign的配置。
    • 2 请求压缩。
    • 3 日志级别。
  • 服务注册和发现总结
    • 1 注册中心。
    • 2 服务调用。
  • 微服务架构的高并发问题
    • 1 准备环境。
    • 2 使用Jmeter测试接口。
    • 3 系统负载过高存在的问题。
    • 4 线程池隔离的方式处理积压问题。
  • 服务熔断Hystrix入门
    • 1 服务容错的核心知识。
    • 2 Hystrix介绍。
    • 3 Rest实现服务降级。
    • 4 Feign实现服务降级。
  • 服务熔断Hystrix高级
    • 1 前言。
    • 2 Hystrix的监控平台。
    • 3 断路器的状态。
    • 4 断路器的隔离策略。
  • 微服务网关概述
    • 1 前言。
    • 2 微服务网关的概念。
    • 3 常见的API网关实现方式。
    • 4 基于Nginx的网关实现。
  • 微服务网关Zuul
    • 1 Zuul简介。
    • 2 搭建Zuul网关服务器。
    • 3 Zuul中的路由转发。
    • 4 Zuul加入后的架构。
    • 5 Zuul中的过滤器。
    • 6 Zuul网关存在的问题。
    • 7 Zuul网关的替换方案。
  • 微服务网关Gateway
    • 1 Gateway简介。
    • 2 入门案例。
    • 3 过滤器。
    • 4 统一鉴权。
    • 5 网关限流。
    • 6 网关高可用。
  • 微服务的链路追踪
    • 1 微服务架构下的问题。
    • 2 Sleuth概述。
    • 3 链路追踪Sleuth入门。
    • 4 ZipKin概述。
    • 5 Zipkin Server的部署和配置。
    • 6 客户端Zipkin和Sleuth整合。
    • 7 分析Zipkin整合Sleuth的问题。
    • 8 存储跟踪数据。
    • 9 基于消息中间件收集数据。
  • Spring Cloud Stream
    • 1 前言。
    • 2 概述。
    • 3 核心概念。
    • 4 Spring Cloud Stream标准流程套路。
    • 5 入门案例。
    • 6 自定义消息通道。
    • 7 消息分组。
    • 8 消息分区。
  • Spring Cloud Config
    • 1 什么是配置中心。
    • 2 Spring Cloud Config简介。
    • 3 Spring Cloud Config入门。
    • 4 配置中心的高可用。
  • Spring Cloud Bus
    • 1 概述。
    • 2 Spring Cloud Bus动态刷新全局广播。
    • 3 Spring Cloud Bus动态刷新定点通知。
  • 服务注册和配置中心Nacos
    • 1 Nacos简介。
    • 2 安装和运行。
    • 3 Nacos作为服务注册中心。
    • 4 各种服务注册中心对比。
    • 5 Nacos作为服务配置中心的基础配置。
    • 6 Nacos作为服务配置中心的分类配置。
    • 7 Nacos集群和持久化配置。
  • 服务熔断Hystrix的替换方案Sentinel
    • 1 服务熔断Hystrix的替换方案。
    • 2 Sentinel概述。
    • 3 安装和运行Sentinel Dashboard。
    • 4 初始化演示工程。
    • 5 流控规则。
    • 6 降级规则。
    • 7 热点key限流。
    • 8 系统规则。
    • 9 Rest实现服务降级。
    • 10 Feign实现服务降级。
    • 11 Sentinel规则持久化。
  • 分布式事务Seata:。

4.15 Netty

原文地址:https://www.cnblogs.com/xuweiweiwoaini/p/13859311.html