Skip to content

Java

JavaSE基础

  • 计算机基础

  • Java入门学习

  • Java基础语法

  • 流程控制和方法

  • 数组

  • 面向对象编程

  • 异常

  • 常用类

  • 集合框架

  • IO

  • 多线程

  • GUI编程

  • 网络编程

  • 注解和反射

  • JUC编程

  • JVM

  • 23种设计模式

  • 数据结构和算法

  • 正则表达式

JavaWeb基础

  • MySQL初级

  • JDBC

  • HTML5

  • CSS3

  • JavaScript

  • jQuery

  • Http协议

  • Tomcat

  • Servlet

  • Cookie & Session

  • JSP

  • JSTL & EL表达式

  • MVC三层架构

  • 过滤器

  • 监听器

  • 文件上传与下载

  • 邮件收发

  • 富文本编辑器

SSM框架基础

  • Maven

  • Junit

  • Java日志框架

  • MyBatis

  • Spring

  • SpringMVC

  • Ajax

  • SSM框架整合

  • Shiro

  • MyBatis-Plus

Linux基础

  • Linux基础

  • Shell编程

  • Linux系统管理

  • Linux网络

  • LAMP平台部署

  • LNMP平台部署

  • Nginx

ELK日志分析

MySQL集群

Redis

Linux集群

Docker

OpenStack

Kubernetes

分布式与微服务

Vue

NodeJS

SpringBoot原理

SpringBootWeb开发

SpringData

SpringSecurity

SpringBoot分布式开发

ActiveMQ

Elsticsearch

Dobbo+Zookeeper

SpringCloud Netflix 全家桶

SpringCloud Alibaba 全家桶

大数据开发

负载均衡

Hadoop

Hive

HBase

Flume

Sqoop

Zookeeper

lmpala

Scala编程

Spark系列

Kafka

参考链接

2024年最新超详细Java学习路线一条龙版(建议收藏🔥) | 二哥的Java进阶之路 (javabetter.cn)

人类高质量 Java 学习路线【一条龙版】 - 程序员鱼皮 - 博客园 (cnblogs.com)

Java学习步骤及路线(超详细)_java全面学习路线以及教程-CSDN博客

Java学习路线及资料--全网最靠谱_自学精灵-CSDN博客

Java SE

Java EE

Java学习路线一条龙

Java编程基础

  • *Java 基础语法***
    • 数据类型
    • 流程控制
  • 数组
  • *面向对象***
    • 方法
    • 重载
    • 封装
    • 继承
    • 多态
  • 抽象类
  • 接口
  • 枚举
  • 常用类
    • String
    • 日期时间
  • 集合类
  • 泛型
  • 注解
  • 异常处理
  • 多线程
  • IO 流
  • Java8新特性
    • Stream API
    • Lambda 表达式
    • 新日期时间 API
    • 接口默认方法

Java基础巩固

Java核心技术卷I

数据结构与算法

  • *时间 / 空间复杂度分析***
  • 数据结构
    • 数组
    • 字符串
    • 队列
    • 链表
    • 集合
    • 哈希表
    • 二叉树
  • 算法
    • 排序
    • 双指针
    • 查找
    • 分治
    • 动态规划
    • 递归
    • 回溯
    • 贪心
    • 位运算
    • DFS
    • BFS

计算机基础

  • 计算机网络
    • HTTP / HTTPS 协议
    • 网络模型
    • UDP / TCP 协议
    • 网络安全
    • 域名解析
  • 操作系统
    • 进程、线程
    • 进程 / 线程间通讯方式
    • 进程调度算法
    • 进程 / 线程状态
    • 死锁
    • 内存管理

Java企业级开发(Java EE)

  • MySQL
    • 基本概念
    • MySQL 搭建
    • SQL 语句编写
    • 约束
    • 索引
    • 事务
    • 设计数据库表
    • 性能优化
  • 开发框架
    • Java Web
      • 描述:Java 网页应用开发基础
      • 前端基础
      • XML
      • JSON
      • Servlet
      • Filter
      • Listener
      • JSP
      • JSTL
      • Cookie
      • Session
    • Spring Framework 5
      • 描述:Java 轻量级应用框架
      • IOC
      • AOP
      • 事务
    • Spring MVC
      • 描述:Java 轻量级 web 开发框架
      • 什么是 MVC?
      • 请求与响应
      • Restful API
      • 拦截器
      • 配置
      • 执行过程
    • MyBatis
      • 描述:数据访问框架,操作数据库进行增删改查等操作
      • 增删改查
      • 全局配置
      • 动态 SQL
      • 缓存
      • 和其他框架的整合
      • 逆向工程
    • MyBatis Plus
      • 描述:Mybatis 的增强工具,能够简化开发、提高效率
      • 引入
      • 通用 CRUD
      • 条件构造器
      • 代码生成器
      • 插件扩展
      • 自定义全局操作
    • Spring Boot 2
      • 描述:简化 Spring 应用的初始搭建以及开发过程,提高效率
      • 常用注解
      • 资源整合
      • 高级特性
      • 本地热部署
    • Spring Security
      • 描述:Spring 的安全管理框架
      • 用户认证
      • 权限管理
    • Maven /Gradle
      • 描述:项目管理工具
      • 构建
      • 依赖管理
      • 插件
      • 配置
      • 子父工程

开发规范

  • 代码规范
    • 代码风格
    • 命名
    • 其他规则
  • 提交规范

Git

  • 工作区
  • 分支
  • 代码提交、推送、拉取、回退、重置
  • 分支操作
  • 代码合并、解决冲突
  • 标签
  • cherry-pick

Linux

  • Linux 系统安装
  • 环境变量
  • 文件管理
  • 用户管理
  • 内存管理
  • 磁盘管理
  • 进程管理
  • 网络管理
  • 软件包管理
  • 服务管理
  • 日志管理
  • Linux 内核
  • *常用命令***
  • *常用环境搭建***
  • *Shell 脚本编程***
  • *VIM 的使用***

前端基础

  • HTML
  • CSS
  • JavaScript
    • Ajax
    • jQuery
  • Vue

设计模式

  • 创建型模式:对象实例化的模式,创建型模式用于解耦对象的实例化过程
    • 单例模式
    • 工厂方法模式
    • 抽象工厂
    • 建造者模式
    • 原型模式
  • 结构型模式:把类或对象结合在一起形成一个更大的结构
    • 适配器模式
    • 组合模式
    • 装饰器模式
    • 代理模式
    • 享元模式
    • 外观模式
    • 桥接模式
  • 行为型模式:类和对象如何交互,及划分责任和算法
    • 迭代器模式
    • 模板方法模式
    • 策略模式
    • 命令模式
    • 状态模式
    • 责任链模式
    • 备忘录模式
    • 观察者模式
    • 访问者模式
    • 中介者模式
    • 解释器模式

中间件

Redis 缓存

  • 数据类型
  • 常用操作
  • Java 操作 Redis
  • 主从模型搭建
  • 哨兵集群搭建
  • 日志持久化
  • 应用场景

RabbitMQ 消息队列

  • 消息队列的作用
  • 生产消费模型
  • 交换机模型
  • 死信队列
  • 延迟队列
  • 消息持久化
  • Java 操作
  • 集群搭建

Nginx 网关

  • Nginx 作用
  • 正向代理
  • 反向代理(负载均衡)
  • 常用命令
  • 配置
  • 动静分离(网站部署)
  • 集群搭建

Netty 网络编程

  • IO 模型(BIO / NIO)
  • Channel
  • Buffer
  • Seletor
  • Netty 模型
  • WebSocket 编程(动手做个聊天室)

微服务

Dubbo
  • 架构演进
  • RPC
  • Zookeeper
  • 服务提供者
  • 服务消费者
  • 项目搭建
微服务
  • 微服务概念
  • Spring Cloud 框架
    • 子父工程
    • 服务注册与发现
    • 注册中心 Eureka、Zookeeper、Consul
    • Ribbon 负载均衡
    • Feign 服务调用
    • Hystrix 服务限流、降级、熔断
    • Resilience4j 服务容错
    • Gateway(Zuul)微服务网关
    • Config 分布式配置中心
    • 分布式服务总线
    • 分布式链路追踪
  • Spring Cloud Alibaba
    • Nacos 注册、配置中心
    • OpenFeign 服务调用
    • Sentinel 流控
    • Seata 分布式事务
接口管理
  • Swagger 接口文档
  • Postman 接口测试

容器

  • Docker
    • 容器概念
    • 镜像
    • 部署服务
    • Dockerfile
  • K8S(Kubernetes)
    • 架构
    • 部署应用
    • 暴露服务
    • 动态扩缩容

CI/CD

  • 什么是 CI / CD
  • CI / CD 有什么好处
  • 使用任一 CI / CD 平台

阶段 5:项目实战

项目源码(50 套)

电商秒杀

博客论坛

  • Mblog:开源 Java 博客系统
  • halo:一个优秀的开源博客发布应用
  • forum-java:一款用 Java(spring boot) 实现的现代化社区(论坛/问答/BBS/社交网络/博客)系统平台
  • vhr:微人事是一个前后端分离的人力资源管理系统,项目采用 SpringBoot+Vue 开发。
  • favorites-web:云收藏 Spring Boot 2.X 开源项目。云收藏是一个使用 Spring Boot 构建的开源网站,可以让用户在线随时随地收藏的一个网站,在网站上分类整理收藏的网站或者文章。
  • community:码问,开源论坛、问答系统,现有功能提问、回复、通知、最新、最热、消除零回复功能。技术栈 Spring、Spring Boot、MyBatis、MySQL/H2、Bootstrap
  • NiterForum:尼特社区-NiterForum-一个论坛/社区程序。后端Springboot/MyBatis/Maven/MySQL,前端Thymeleaf/Layui。可供初学者,学习、交流使用。
  • VBlog:V部落,Vue+SpringBoot实现的多用户博客管理平台!
  • NiceFish:SpringBoot/SpringCloud 前后端分离项目
  • My-Blog: My Blog 是由 SpringBoot + Mybatis + Thymeleaf 等技术实现的 Java 博客系统,页面美观、功能齐全、部署简单及完善的代码,一定会给使用者无与伦比的体验。
  • My-Blog-layui:layui 版本的 My-Blog : A simple & beautiful blogging system implemented with spring-boot & layui & thymeleaf & mybatis My Blog 是由 SpringBoot + Layui + Mybatis + Thymeleaf 等技术实现的 Java 博客系统,页面美观、功能齐全、部署简单及完善的代码,一定会给使用者无与伦比的体验
  • symphony:Java 实现的现代化社区

管理系统

  • Spring-Cloud-Admin:Cloud-Admin 是国内首个基于 Spring Cloud 微服务化开发平台,具有统一授权、认证后台管理系统,其中包含具备用户管理、资源权限管理、网关 API 管理等多个模块,支持多业务系统并行开发,可以作为后端服务的开发脚手架。代码简洁,架构清晰,适合学习和直接项目中使用。核心技术采用 Spring Boot2 以及 Spring Cloud Gateway 相关核心组件,前端采用 vue-element-admin 组件。
  • bootshiro:基于 springboot+shiro+jwt 的资源无状态认证权限管理系统后端
  • 悟空CRM:基于jfinal+vue+ElementUI的前后端分离CRM系统
  • EL-ADMIN:基于 SpringBoot 的后台管理系统
  • pig:基于 Spring Boot 2.2、 Spring Cloud Hoxton & Alibaba、 OAuth2 的 RBAC 权限管理系统。
  • FEBS-Shiro:Spring Boot 2.1.3,Shiro1.4.0 & Layui 2.5.4 权限管理系统。
  • Spring Boot-Shiro-Vue:基于Spring Boot-Shiro-Vue 的权限管理
  • studentmanager:基于springboot+mybatis学生管理系统
  • jshERP:华夏ERP基于SpringBoot框架和SaaS模式,立志为中小企业提供开源好用的ERP软件,目前专注进销存+财务功能。主要模块有零售管理、采购管理、销售管理、仓库管理、财务管理、报表查询、系统管理等。支持预付款、收入支出、仓库调拨、组装拆卸、订单等特色功能。拥有库存状况、出入库统计等报表。同时对角色和权限进行了细致全面控制,精确到每个按钮和菜单。
  • HotelSystem:酒店管理系统 Java,tomcat,mysql,servlet,jsp实现,没有使用任何框架

开发平台

  • open-capacity-platform:微服务能力开发平台
  • jeecg-boot:JeecgBoot是一款基于BPM的低代码平台!前后端分离架构 SpringBoot 2.x,SpringCloud,Ant Design&Vue,Mybatis-plus,Shiro,JWT,支持微服务。强大的代码生成器让前后端代码一键生成,实现低代码开发!

其他

阶段6 Java高级

并发编程

  • 线程和进程
  • 线程状态
  • 并行和并发
  • 同步和异步
  • Synchronized
  • Volatile 关键字
  • Lock 锁
  • 死锁
  • 可重入锁
  • 线程安全
  • 线程池
  • JUC 的使用
  • AQS
  • Fork Join
  • CAS

JVM

  • JVM 内存结构
  • JVM 生命周期
  • 主流虚拟机
  • Java 代码执行流程
  • 类加载
    • 类加载器
    • 类加载过程
    • 双亲委派机制
  • 垃圾回收
    • 垃圾回收器
    • 垃圾回收策略
    • 垃圾回收算法
    • StopTheWorld
  • 字节码
  • 内存分配和回收
  • JVM 性能调优
    • 性能分析方法
    • 常用工具
    • 参数设置

架构设计

分布式
  • 分布式理论
    • CAP
    • BASE
  • 分布式缓存
    • Redis
    • Memcached
    • Etcd
  • 一致性算法
    • Raft
    • 一致性哈希
    • Paxos
  • 分布式事务
  • 分布式 id 生成
  • 分布式服务调用
  • 分布式存储
  • 分布式数据库
  • 分布式文件系统
  • 分布式协调
    • Zookeeper
  • 分布式监控
    • Prometheus
  • 分布式消息队列
    • RabbitMQ
    • Kafka
    • Apache Pulsar
  • 分布式日志收集
    • Elastic Stack
    • Loki
  • 分布式搜索引擎
    • Elasticsearch
  • 分布式链路追踪
    • Apache SkyWalking
  • 分布式配置中心
    • Apollo
    • Nacos
高可用
  • 主从
  • 异地多活
  • 容灾备份
高并发
  • 数据库
    • 分库分表
    • 读写分离
  • 缓存
    • 缓存雪崩
    • 缓存击穿
    • 缓存穿透
  • 负载均衡
    • 负载均衡算法
    • 软硬件负载均衡(2、3、4、7 层)
其他
  • 监控告警
  • 领域驱动设计
  • 应用安全
  • 线上故障分析
  • 服务网格
  • Serverless
  • 云原生

Java求职

建议

  1. 尽早做规划,可以通过大厂招聘官网的岗位描述来了解岗位的要求
  2. 雕琢一份优秀的简历,推荐阅读:https://mp.weixin.qq.com/s/wfabzdpOPdq89faFFpZ4NA
  3. 多读面经,坚持刷算法
  4. 多参与面试,持续复盘总结

知识总结

面经

视频

持续学习

框架源码

  • Spring
  • SpringBoot
  • SpringMVC
  • MyBatis
  • Netty
  • Dubbo
  • SpringCloud

计算机原理

数据库 / 中间件 / 分布式

  • 数据库
    • MySQL
    • PostgreSQL
  • 缓存
    • Redis
  • 队列
    • Apache Kafka
    • Apache Pulsar
  • 搜索引擎
    • Elastic Stack
  • 容器
    • Docker
    • K8S

解决方案

  • 广告
  • 电商
  • 搜索
  • 游戏
  • 即时通讯
  • 社交
  • CMS
  • ERP
  • OA

架构

  • 亿级流量架构
  • 秒杀系统
  • 架构选型能力

大数据

  • 5V 特点
  • Hadoop
  • HDFS
  • MapReduce
  • Spark
  • Flink
  • Storm
  • Hive
  • HBase
  • Druid
  • Kylin
  • Pig
  • Mahout

前沿技术

自学 Java 专题资源

职业方向

  • Web开发

  • 大数据开发

  • 安卓开发

  • 桌面软件开发

  • 金融交易系统开发

  • 嵌入式开发

  • 高频交易

基于 MIT 许可发布