2021最新最細(xì)Java學(xué)習(xí)路線(初學(xué)者必看)
前言
很多新人在剛開(kāi)始學(xué)習(xí)java時(shí)都會(huì)碰到這個(gè)問(wèn)題,那就是到底應(yīng)該如何學(xué)習(xí)Java?
互聯(lián)網(wǎng)上資源那么多,那么學(xué)習(xí)順序又是什么呢?
今天針對(duì)這個(gè)問(wèn)題,小編匯總了2021年史上最新最詳細(xì)的Java學(xué)習(xí)路線,供初學(xué)Java的同學(xué)參考!

Java學(xué)習(xí)路線
好了,我們廢話少說(shuō),揭曉來(lái)就開(kāi)始講解Java的學(xué)習(xí)路線!!!
第一階段:Java基礎(chǔ)(javase)

環(huán)境變量:JDK 、JRE、JVM
開(kāi)發(fā)工具:INteliJ IDEA、eclipse、VS code
入門(mén)知識(shí):二進(jìn)制、變量、八種數(shù)據(jù)類型、運(yùn)算符、類型轉(zhuǎn)化
控制語(yǔ)句:單選擇結(jié)構(gòu)、雙選擇結(jié)構(gòu)、多選擇結(jié)構(gòu)、switch語(yǔ)句、循環(huán)語(yǔ)句、break、continue、方法、遞歸
面向?qū)ο?對(duì)象和類的區(qū)別、屬性、方法、構(gòu)造方法、JVM內(nèi)存、垃圾回收機(jī)制、This 關(guān)鍵字、static關(guān)鍵字、包機(jī)制、封裝、繼承、多態(tài)、抽象類、抽象方法、接口、內(nèi)部類
數(shù)組:一維數(shù)組、二維數(shù)組、多維數(shù)組、排序算法、查找算法
網(wǎng)絡(luò)編程:網(wǎng)絡(luò)通信協(xié)議、URL、Socket編程、TCP雙向通信、UDP通信
反射技術(shù):Class對(duì)象原理、獲取類的構(gòu)造方法、獲取類的屬性、獲取類的方法
Lambda表達(dá)式:基本語(yǔ)法、實(shí)現(xiàn)函數(shù)接口、引用方法、創(chuàng)建線程、操作集合、閉包問(wèn)題
異常機(jī)制: CheckedException、RuntimeException、 try-catch-finally異常解決、 try-with-resource新特性、聲明式解決異常、自定義異常
常用類:String不可變字符串類、StrngBuilder、 StringBuffer可變字符串類、八種包裝類、時(shí)間相關(guān)類(Date、 DateFormat、 Calendar)
容器:泛型、List、 Set、 Map
手寫(xiě)數(shù)據(jù)結(jié)構(gòu):手寫(xiě)棧結(jié)構(gòu)、手寫(xiě)單向鏈表結(jié)構(gòu)、手寫(xiě)雙向鏈表結(jié)構(gòu)、手寫(xiě)二叉樹(shù)排序、手寫(xiě)樹(shù)形數(shù)據(jù)結(jié)構(gòu)
I0流技術(shù):四太抽象類、文件字節(jié)流、文件字符流、緩沖流、轉(zhuǎn)換流、字節(jié)數(shù)組流、對(duì)象流、文件隨意訪問(wèn)流
多線程和并發(fā)編程技術(shù):線程和并發(fā)的概念、線程創(chuàng)建的兩種方式、線程的生命周期、線程同步、線程并發(fā)和協(xié)作、線程池
推薦教程:


第二階段:數(shù)據(jù)庫(kù)編程

SQL語(yǔ)言:select查詢、函數(shù)、多表查詢、自連接、外連接、組函數(shù)、嵌套組函數(shù)、子查、DML語(yǔ)言主鍵、外鍵、事務(wù)、視圖、索引
數(shù)據(jù)庫(kù)管理:mysq|安裝和使用、oracle安裝和使用、用戶權(quán)限、執(zhí)行計(jì)劃、導(dǎo)入和導(dǎo)出數(shù)據(jù)、數(shù)據(jù)庫(kù)設(shè)計(jì)范式
JDBC編程:驅(qū)動(dòng)加載和核心原理、PreparedStatement、ResultSet 、事務(wù)處理、程序分層開(kāi)發(fā)
第三階段:網(wǎng)頁(yè)編程

HTML5:常用標(biāo)簽、表單標(biāo)簽、表格標(biāo)簽、音視頻標(biāo)簽、多媒體標(biāo)簽
CSS3:選擇器、盒子模型、定位
JavaScript語(yǔ)言:基本語(yǔ)法、控制語(yǔ)句、函數(shù)與對(duì)象、事件機(jī)制 、 DOM編程
VUE框架:模板語(yǔ)法、條件渲染、列表渲染、事件處理、組件、路由、 Axios網(wǎng)絡(luò)請(qǐng)求跨域 、狀態(tài)管理Vuex 、打包部署
第四階段:JavaEE開(kāi)發(fā)

網(wǎng)絡(luò)編程協(xié)議:應(yīng)用協(xié)議、傳輸協(xié)議、網(wǎng)際協(xié)議、路由控制協(xié)議、TCP協(xié)議、http協(xié)議、
Servlet:Tomcat服務(wù)器、Servlet生命周期詳解、HttpRequest對(duì)象、HttpResponse對(duì)象、HttpSession對(duì)象、ServletContext對(duì)象、過(guò)濾器、監(jiān)聽(tīng)器、JSP技術(shù)介紹、
第五階段:SSM框架

Mybatis:核心API 、全局與映射配置文件、事務(wù)管理、SqlSession 、Mapper動(dòng)態(tài)代理、動(dòng)態(tài)SQL 、緩存的使用、多表關(guān)聯(lián)查詢、注解開(kāi)發(fā)
Spring:核心體系、 IOC與AOP 、整合持久層、代理模式、AspectJ框架、聲明式事務(wù)
Spring MVC: MVC模式、獲取請(qǐng)求參數(shù)、處理響應(yīng)、異常處理、攔截器、 Restful風(fēng)格支持 、JSON數(shù)據(jù)處理、跨域請(qǐng)求
Shiro安全框架:認(rèn)證策略、加密算法、授權(quán)、SessionManager、 RememberMe
第六階段:項(xiàng)目管理和Linux

Linux系統(tǒng):VMWare安裝和使用、常用命令、常用配置、Xshell的使用
Git:版本控制原理、本地命令、遠(yuǎn)程倉(cāng)庫(kù)操作、 IDEA中操作Git
Maven:整合IDEA 、POM模型、依賴與繼承關(guān)系、插件的使用、私服的使用
Nginx:反向代理、安裝和配置、虛擬主機(jī)配置、負(fù)載均衡、Http協(xié)議代理
第七階段:微服務(wù)

SpringBoot: IDEA腳手架工具創(chuàng)建項(xiàng)目 、 SpringBoot項(xiàng)目結(jié)構(gòu)、整合Web層技術(shù)、整合持久層技術(shù)、度量指標(biāo)監(jiān)控、多環(huán)境配置
spring Session:基于Redis共享Session數(shù)據(jù)、基于Redis同步自定義對(duì)象、設(shè)置Session的失效時(shí)間、更換Spring Session的序列化器
Spring Session MongoDB:基于MongoDB共享Session數(shù)據(jù)、基于MongoDB同步自定義對(duì)象、設(shè)置Session的失效時(shí)間、更換Spring Session MongoDB的序列化器
Spring SEcurity: UserDetailsSewice詳解、PasswordEncoder密碼解析器詳解、自定義處理器、授權(quán)處理、RememberMe的實(shí)現(xiàn)
Spring Cloud:搭建Eureka高可用集群、 Ribbon 常見(jiàn)的負(fù)載均衡策略 、OpenFeign的使用、OpenFeign對(duì)Gzip的支持、二Hystrix簡(jiǎn)介、服務(wù)降級(jí)與熔斷、基于Gitee管 理配置文件 、搭建Gateway服務(wù) 、實(shí)現(xiàn)請(qǐng)求路由、Gateway內(nèi)置過(guò)濾器的使用、服務(wù)實(shí)現(xiàn)熔斷功能
第八階段:分布式

Zookeeper:存儲(chǔ)結(jié)構(gòu)介紹、監(jiān)聽(tīng)通知機(jī)制、單機(jī)與集群安裝、常用命令
Dubbo:Dubbo簡(jiǎn)介、 配置文件詳解、服務(wù)的遠(yuǎn)程調(diào)用、服務(wù)的監(jiān)控與管理、服務(wù)的負(fù)載均衡策略
FastDFS:FastDFS簡(jiǎn)介、同步機(jī)制詳解、 FastDFS安裝、通過(guò)Java客戶端操作FastDFS、使用FastDFS實(shí)現(xiàn)文件上傳于下載
Swagger :Swagger簡(jiǎn)介、 Swagger極致用法 、Swagger UI用法、基本信息配置、常用注解
第九階段:消息中間件

ActiveMQ:ActiveMQ簡(jiǎn)介、ActiveMQ常用API、ActiveMQ消息處理、Topic模型
RabbitMQ:RabbitMQ簡(jiǎn)介、安裝RabbitMQ、 Direct交換 器、Fanout交換器、Topic交換器
第十階段:高性能數(shù)據(jù)處理

Redis :?jiǎn)螜C(jī)與集群安裝、常用命令、數(shù)據(jù)持久化方式、Jedis的使用、Spring整合Jedis
MongoDB:MongoDB簡(jiǎn)介、 MongoDB基本使用、集合與文檔操作、索引操作、聚合查詢
MyCat:安裝MyCat、創(chuàng)建MySQL的主從模式、配置文件詳解、實(shí)現(xiàn)讀寫(xiě)分離、分片規(guī)則的定義
第十一階段:全文檢索服務(wù)

Solr:Solr安裝與啟動(dòng)、中文分詞器的使用、 WEB控制臺(tái)的使用、SolrJ的使用、 Spring Data For Apache Solr的使用
ElasticSearch:ElasticSearch簡(jiǎn)介、單機(jī)與集群安裝、索引與文檔操作、安裝中文分詞器、Spring Data For ElasticSearch的使用
Logstash_ Kibana :Logstash簡(jiǎn)介、 Logstash安裝、Logback日志處理、搭建日志系統(tǒng)
第十二階段:容器化技術(shù)

Docker:安裝Docker、Docker的啟動(dòng)與停止、配置阿里鏡像加速器、鏡像與容器管理、容器的生命周期詳解、數(shù)據(jù)卷管理
Kubernetes :Kubernetes安裝、常用命令、配置Ingress規(guī)則、Helm部署release、Kubernetes高可用集群