您的位置 首页 java

2022年末最新最全Java学习路线,结合工作经验和培训机构整理

前言

我们需要有一个前提共识是,并不是将所有的技术学完之后才可以去就业,也不要给自己太大的心理压力,核心在于 【基础的掌握】、【框架应用】、【项目实战】 三块掌握就业基本没有问题,剩下的就看自己的职业规划或企业需求来计划下一步的前进方向

● 初学者建立正确且高效知识体系

● 中高级工程师查漏补缺,更上一层

● 资深开发和专业研究员可以当`少儿读物`

下边以 思维导图 方式罗列出大概的体系,后续会陆续更新每一个点的技术文档和视频,喜欢的记得加关注~~~

JavaSE

这是Java的基础部分,也是入门第一步,非常重要,时间不紧张的话可以多花点时间,多做点练习题

JavaSE 基础:环境搭建和配置、变量、数据类型、流程控制语句、数组、面向对象编程

JavaSE 进阶:常用API、异常体系、集合体系、 IO流 、多线程、网络编程、 泛型 、反射、注解、枚举

Java 高级特性: Lambda表达式 、函数式接口、 Stream 、JUC包、Lock、新日期API、设计模式、ConcurrentHashMap、LinkedBlockingDeque……

JavaWeb

这块利用Java开发Web应用,诸如 HTML CSS 、JavaScript这些简单学习一下即可,甚至有些教程基本不会有这三块的体现。

现在开发项目也不会使用Servlet和JSP,其中的基础概念比较重要,之前也一度想略过Servlet和JSP,直接介绍SpringMVC和模板引擎等开发项目,但是后边的框架也是对基础的封装,学习了解对理解框架,用好框架有很好的铺垫作用。

HTML:介绍、基本标签、实体符号、表格、表单

CSS:CSS介绍和引入方式、边框、字体、效果、盒子模型、布局、定位

JavaScript:JavaScript概述、基础语法、事件、BOM操作、DOM操作

Tomcat :安装与启动、Tomcat体系结构、Tomcat配置、部署项目

Servlet:Servlet作用和 生命周期 、Servlet常用接口和类、配置Servlet、监听器、过滤器、Cookie和Session、转发和重定向、注解开发

JSP:JSP动作指令、JSP九大内置对象、EL和JSTL、自定义标签、JSP分页、JSP文件上传

Ajax:了解Ajax概念、 XMLHttpRequest 对象、使用 jQuery 实现Ajax、ajax获取 JSON 数据、JSON语法格式、JavaScript中的JSON、Java中JSON与对象转换

MySQL

记得在培训学校的时候,学生追着问 【数据库啥时候学?我们学习Sql Server吗?听说 Oracle 很厉害啊】 。感觉数据库非常神秘,我在工作过程中有些单位使用 国产数据库 的也遇到过,不过我还只遇到过一家,所有产品都是国产的,原因你能猜到吗?

不过一般企业都在使用MySQL,我们以MySQL为数据库的入口是非常不错的选择!

MySQL基础:MySQL数据类型、 DDL DML DCL 、锁机制、事务、 MVCC (多版本并发控制)、存储引擎( Innodb MyISAM )、My SQL 语句性能分析、索引、索引数据结构、优化SQL、第三范式

MySQL高级特性:视图、游标、 字符集 全文索引 、分区表、分布式事务、缓存

MySQL实战:JDBC、 数据库连接池 、备份与恢复、负载均衡、数据分布、故障切换、主从复制、监控、分库分表

数据库学习完,使用Servlet+JSP+MySQL+Tomcat去开发两个以上项目,最好类型不一样

框架

框架这块先学会使用,再学会怎么用好,再研究源码原理即可,掌握好 Spring 、SpringMVC、 MyBatis 、SpringBoot、会用 Redis ,学习一下 Linux 部署项目,基本可以找一个实习工作试试。

早些年使用Spring+ Struts2 +Hibernate开发,后来演变为Spring+SpringMVC+MyBatis,现如今要求掌握SpringBoot, 【不得不感慨,唯一不变的就是变化】

MyBatis: ORM 概念、配置和使用、执行流程、别名机制、动态SQL、缓存、连接池、插件使用、源码分析

Spring:Spring核心配置和使用、IOC、 AOP 、执行流程和Bean声明周期、常用注解、循环依赖、事务、源码解析、集成MyBatis

SpringMVC:SpringMVC执行流程、Tomcat的SPI机制加载SpringMVC容器、RequestMappingInfo和 Handler Method映射关系、

HandlerMapping和HandlerAdapter关系、HandlerInterceptor的前置、中置、后置过滤器原理、HandlerAdapter参数解析原理、

响应式编程-WebFlux

SpringBoot:SpringBoot环境搭建、配置文件、SpringBoot实现前后端分离、SpringBoot全局异常处理、SpringBoot实现 RestFul 、热部署、SpringBoot启动器原理、核心源码、自动配置

SpringSecurity :执行流程、SpringSecurity常用接口和类、SpringSecurity配置、RBAC权限模型

SpringCloud Netflix:微服务架构、分布式架构、分布式系统问题和解决方案、Eureka注册中心、Ribbon负载均衡原理、Feign声明式服务调用、Zuul网关、Config配置中心并集成Git和SVN、Hystrix服务熔断和降级、Bus/Sleuth/Stream、 微服务 日志、自定义分布式配置中心

SpringCloud Alibaba:Nacos-Discovery服务发现、Nacos-Config配置中心、Sky Walking链路跟踪、Assembly Plugin、Sentinel限流、熔断器、Seata分布式事务

Dubbo:Dubbo架构原理和内核、Dubbo SPI原理、Dubbo IOC和AOP原理、Dubbo动态编译、服务发布原理、服务引用原理、集群容错设计、服务降级设计、 网络通信 架构、网络通信编码解码

中间件

中间件这块,主要掌握Redis、消息队列、 Nginx 、Tomcat刚需技术点,剩下的可以当做加薪选项,小白可以先不关注!

Redis:Redis命令和数据类型、SpringBoot集成Redis、Redis缓存雪崩、缓存击穿、缓存预热、热点Key、缓存降级、短链接、分布式锁、秒杀、堆外缓存、动态刷新、Redis和DB双写一致、删除策略、数据倾斜、核心原理、源码解读

RabbitMQ:系统架构、消息发布和消费权衡、消息拒绝、应用 解耦 、集群化和镜像队列

RocketMQ:消息存储机制、多种消息模式、高可用机制、provider与consumer负载均衡机制、消息过滤TAG/SQL及类过滤模式

Kafka :Kafka生产者和消费者、高级特性、集群

消息队列实战:消息重试(顺序/无序/死信队列)、消费幂等问题、可靠数据传递、集群搭建、与Spring整合、镜像队列、削峰填谷

zookeeper :Zookeeper指令、zookeeper节点类型、zkclient、集群选举原理、分布式锁

Nginx:Nginx架构模型和配置、location配置、 rewrite 解析、动静分离、代理和反向代理、跨域

Tomcat:Tomcat体系结构、HTTP请求解析和处理流程、Tomcat核心组件、Tomcat集群与会话复制方案、 BIO /NIO源码、类加载机制及源码解析

mycat:实现MySQL读写分离、数据库切分、全局表、ER表、分片机制解析

sharding -jdbc:引擎原理和数据分片、读写分离、编排分治、分布式事务、数据脱敏

Elasticsearch:存储结构、分布式CRUD、索引管理、分片、搜索优化

Logstash:架构、数据采集、数据输出、过滤器

Docker:基础操作、Docker File 、网络存储、DockerCompose、微服务与Docker集成实现动态扩容

Netty:HTTP/TCP/UDP网络协议详情、原生JDK网络编程、服务器推送技术实战、WebSocket通信实战、Netty粘包/半包问题、Netty源码

工具

重点掌握哦,开发必备技能! Jenkins 用了都说香

Linux:安装、基础命令、用户与用户组系列操作、文件与权限系列操作

Jenkins:自动化部署、持续部署、远程测试

Maven:安装、配置和使用、坐标和依赖、聚合和继承、生命周期与插件、仓库及版本管理、私服

Git:Git操作命令、基本运行流程、常见问题、GitHub、Gitee

JVM

加薪必备技能点,基础也要了解内存划分和垃圾回收机制。面试也会问到一些虚拟机参数问题!

运行时数据区:程序计数器、JVM栈、本地方法栈、堆、方法区、运行时常量池、直接内存、OOM( OutOfMemory Eror)、StackOverflowError

类加载、链接、初始化、创建对象的过程、HotSpot内核、HotSpot启动、HotSpot系统初始化、HotSpot Oops模块、Klass框架、对象标识机制、对象内存布局、垃圾回收器、垃圾回收算法、指令集、解释器、JIT、 字节码 指令集、字节码执行引擎

虚拟机监控工具:Attach、Heap Dump、jhat、jstack

Java内存模型:JMM、线程实现、线程调度、状态转换、线程安全、锁优化

数据结构和算法

基本概念:时间复杂度、空间复杂度、分治法、动态规划法、贪心算法、回溯法、分支界限法

线性结构:线性表(数组、链表)、 字符串 、栈、队列、hash表、位图 bitmap

树形结构: 二叉树 、平衡查找树、多路查找树、堆、字典树、并查集

图形结构:遍历、最短路径、最小生成树、拓扑排序

查找算法:顺序表查询、二分查询、差值查找、 斐波那契 查找、精密索引、分块索引、倒排索引、二叉查找树、平衡查找树(平衡二叉树AVL、红黑树)、多路查找树(B树、B+树)、 散列表 查找树(散列函数、冲突处理)

排序算法:直接插入排序、希尔排序、简单选择排序、堆排序、冒泡排序、快速排序、归并排序、计数排序、基数排序、桶排序

其他技能

成为架构师必经之路,转变管理岗的必备技能!

高可用、高并发、高性能

高伸缩、高安全:数据一致性、幂等性、限流保护、熔断降级、微服务过载、分布式问题、系统监控、可伸缩性

三方服务:支付、地图、OSS 对象存储 、图像识别、短信服务、视频点播等

需求沟通、需求撰写、技术文档撰写、架构文档撰写、工作汇报、面向上级编程、PPT汇编、相关管理证书

最后如果就业的话,当然还需要:

  • 准备简历
  • 刷面试题
  • 项目当然也不能少哦,即使没有工作经验,也一定要做三个以上企业级项目

总结

学好编程,做好 程序员 ,最终有个好归宿,核心在于以下四点:

  • 【基础】 :树无根也就无叶,底层原理是不变的,打好基础非常重要,想不明白的时候就想想基础
  • 【编码】 :宝剑锋从磨砺出,多做项目,多刷题,边做边思考,想象其中的奥妙
  • 【吸收】 :经验包涵着珍贵的学问,多看看Github优质开源项目和技术文档或书本,往往记录很多宝贵的经验,运用到做过的项目中进行优化,是非常不错的
  • 【坚持】 :有志者事竟成,要走的远就要有非凡的意志,刚开始很难,我也曾想过放弃,做其他“副业”搞钱,为将来铺路,这很滑稽, `【不要焦虑,十年磨一剑】`,坚持下来,提升自己,未来在行业内转型更安全,更稳定

收藏等于学会,行动起来吧吗!

文章来源:智云一二三科技

文章标题:2022年末最新最全Java学习路线,结合工作经验和培训机构整理

文章地址:https://www.zhihuclub.com/178504.shtml

关于作者: 智云科技

热门文章

网站地图