Java學習路線從入門到入土

qwer1030274531發表於2020-09-21

Java學習路線從入門到入土

簡介

一門永不過時的程式語言——Java 程式設計開發。Java程式語言佔比:據官方資料統計,在全球程式語言工程師的數量上,Java程式語言以900萬的程式設計師數量位居首位。 而且很多軟體的開發都離不開Java程式設計,因此其程式設計師的數量最多。而在以Java程式設計為核心的開發領域中,javaEE程式設計師的需求量10年來一直居於首位!Java工程師人才缺口:根據IDC的統計數字:就2017年來說,我國Java人才的缺口已達42.5萬,並且以每年20%左右 的速度增長。在未來5年內,合格軟體人才的需求將遠大於供給。Java工程師就業:1.透過各大招聘網站統計,全國海量公司都在招聘Java開發工程師2.北京Java開發工程師平均薪資,即18530元3.全國Java開發薪資前三:北京 上海 廣州

Java基礎課程

Java基礎課程內容涉及:Java開發介紹、Java陣列、Java物件導向、常用基礎類、集合、IO流、多執行緒、異常、網路、反射。

END

第一階段

第一部分:Java開發介紹

  1. DOS常用命令

  2. JVM、JRE、JDK之間的關係

  3. Java開發環境的搭建:安裝JDK,配置環境變數

  4. Java入門程式(Java的開發流程)

  5. Java的註釋,識別符號、識別符號的命名規範

  6. Java基本資料型別

  7. 變數和常量的定義及初始化

  8. Java的運算子

  9. 運算子的優先順序

  10. Java分支語句之if…else

  11. 迴圈的巢狀

  12. 方法的定義

  13. 方法的形參和實參

  14. 方法的壓棧

  15. 方法的遞迴呼叫

第二部分:Java陣列

  1. Java 陣列的定義
  2. Java 陣列的宣告
  3. 陣列的優勢與侷限
  4. 陣列的動態初始化
  5. 陣列的儲存特點(堆和棧)
  6. 陣列的遍歷訪問(普通迴圈,增強for迴圈)
  7. 陣列元素的順序查詢
  8. 陣列元素的二分法查詢
  9. 陣列元素的選擇排序
  10. 陣列元素的冒泡法排序
  11. Arrays工具類的使用
  12. 二維陣列的介紹
  13. 二維陣列的宣告與初始化
  14. 二維陣列的遍歷
  15. 二維陣列的使用

第三部分:Java物件導向

  1. 物件導向設計思想
  2. 物件導向的分析與設計
  3. Java與物件導向
  4. 類中成員變數的定義與意義
  5. 構造方法的定義和呼叫
  6. 物件導向的封裝特性
  7. 區域性變數和成員變數的作用域問題
  8. 靜態屬性、靜態方法、靜態程式碼塊
  9. 物件導向的繼承特性
  10. 繼承中構造方法的細節
  11. 物件導向的多型特性
  12. 抽象方法與抽象類
  13. 介面的介紹
  14. 透過內部類製作效能檢測工具
  15. Java的記憶體分析

第四部分:常用基礎類

  1. 列舉型別介紹
  2. 列舉的定義
  3. 結合switch-case使用列舉
  4. String字串
  5. 字串緩衝區StringBuffer和StringBuilder
  6. 字串與緩衝區的區別
  7. 基本型別的包裝型別
  8. Date類的使用
  9. SimpleDateFormat類的使用
  10. Math類的使用
  11. Random類的使用
  12. Runtime類的使用
  13. System 類的使用
  14. Calendar類的使用
  15. Java8新特性

第五部分:集合

  1. 集合的概念和作用
  2. 集合和陣列的區別
  3. 集合框架體系介紹
  4. 集合框架之Collection介面
  5. 泛型的使用
  6. ArrayList和LinkedList的方法使用
  7. ArrayList和LinkedList各自的工作原理分析原理分析
  8. Vector和Stack使用介紹
  9. 使用多種方式遍歷集合
  10. 迭代器的使用和工作原理
  11. HashSet和LinkedHashSet各自的工作原理分析
  12. 集合框架之Map介面
  13. TreeMap的方法使用和排序方式
  14. 分析Set和Map之間的區別與聯絡
  15. Collections工具類的使用

第六部分:IO流

  1. File類的作用
  2. File類中常用方法的使用介紹
  3. 使用File類操作檔案和資料夾
  4. 相對路徑和絕對路徑的介紹
  5. IO流的概念和工作原理
  6. IO流的分類
  7. 檔案流的使用
  8. 轉換流的使用
  9. 緩衝流的使用
  10. 物件流的使用
  11. 記憶體流的使用
  12. 使用不同的流實現檔案內容的複製
  13. RandomAccessFile類的使用
  14. Properties類的使用
  15. 裝飾者設計模式

第七部分:多執行緒

  1. 程式和執行緒的介紹
  2. 程式和執行緒之間的區別與聯絡
  3. 執行緒實現方式之繼承自Thread類
  4. 執行緒實現方式之實現Runnable介面
  5. 執行緒實現方式之執行緒池
  6. 執行緒的生命週期
  7. 執行緒中常用方法的使用
  8. 多執行緒中的臨界資源問題分析
  9. 解決臨界資源問題之同步程式碼塊
  10. 解決臨界資源問題之同步方法
  11. 解決臨界資源問題之ReentrantLock
  12. 多執行緒講解和理解
  13. 多執行緒在單例中的應用
  14. 死鎖介紹以及案例演示
  15. 生產者與消費者設計模式

第八部分:異常

  1. 異常的概念
  2. 異常的分類
  3. 異常的理解
  4. 常見異常介紹
  5. 執行時異常
  6. 編譯時異常
  7. 執行和編譯異常區別
  8. 異常的處理方式之捕獲異常
  9. 異常的處理方式之丟擲異常
  10. 異常的處理方式之斷點除錯
  11. 斷點除錯之引導執行步驟
  12. 自定義異常
  13. 異常關鍵字處理
  14. 關鍵字執行流程
  15. 異常總結

第九部分:網路

  1. 計算機網路和網路程式設計
  2. 網路程式設計與網頁程式設計的區別
  3. IP地址和埠號的介紹
  4. 網路通訊協議的介紹
  5. InetAddress類的方法使用
  6. Socket通訊模型的介紹
  7. 使用UDP實現資料的傳送和接收
  8. 使用TCP實現資料的傳送和接收
  9. 使用TCP實現檔案的上傳和下載
  10. 使用TCP實現多人聊天
  11. URL和URLConnection使用介紹
  12. URLEncoder和URLDecoder的使用介紹
  13. 基於HTTP協議訪問網路資源
  14. Json解析
  15. 基於HTTP協議實現網路檔案的下載

第十部分:反射

  1. 反射機制的概念

  2. 反射機制的作用

  3. 反射機制的理解

  4. Class類的使用

  5. Class檔案獲取的三種方式

  6. 獲取Constructor物件

  7. 獲取私有Constructor物件

  8. 獲取Method物件

  9. 獲取私有Method物件

  10. Constructor的使用

  11. Method類的使用

  12. Field類的使用

  13. Modifier類的介紹

  14. 反射使用練習

  15. 反射機制在工廠設計模式中的應用

    END


JavaWeb課程

第二階段

內容

  • HTML5課程
  • CSS3
  • JavaScript
  • MySQL使用
  • JDBC連線池
  • Servlet
  • JSP
  • AJAX
  • jQuery
  • Bootstrap

第一部分:HTML5

  1. html概述
  2. html基本標籤
  3. 圖片標籤
  4. 超連結標籤
  5. 表格標籤
  6. 無序列表標籤
  7. 有序列表標籤
  8. 定義列表標籤
  9. div標籤
  10. 語義化標籤
  11. 表單標籤
  12. 語義化表單元素
  13. 框架標籤
  14. 特殊字元
  15. 綜合案例

第二部分:CSS3

  1. CSS3簡介和用途
  2. CSS3書寫規範
  3. CSS3基本語法
  4. CSS3三種使用方式
  5. 標籤選擇器
  6. Id選擇器
  7. Class選擇器
  8. 屬性選擇器
  9. 層次選擇器
  10. 文字、文字屬性
  11. 背景、列表屬性
  12. 尺寸、顯示、輪廓屬性
  13. 浮動、定位屬性
  14. 盒子模型
  15. CSS3高階屬性

第三部分:JavaScript

  1. JavaScript概述
  2. JavaScript發展史
  3. JavaScript組成
  4. 資料型別
  5. 運算子
  6. 分支語句
  7. 迴圈語句
  8. 系統函式、自定義函式、匿名函式
  9. 常見事件
  10. 陣列、字串、日期物件
  11. 正規表示式
  12. BOM物件:window、history、location
  13. DOM概念
  14. DOM操作:建立、修改內容、刪除
  15. Css樣式操作

第四部分:MySQL使用

  1. 資料庫簡介
  2. MySQL的安裝與使用
  3. MySQL客戶端和伺服器配置
  4. 使用者許可權管理
  5. DDL建立資料庫和表
  6. 約束與外來鍵
  7. DML實現新增、修改、刪除資料
  8. 聚合函式、日期函式等
  9. DQL簡單查詢
  10. 排序、分組、篩選
  11. 多表查詢
  12. 子查詢
  13. in和exists關鍵字
  14. 分頁查詢
  15. Mysql SQL語句最佳化介紹

第五部分:JDBC連線池

  1. JDBC概述
  2. JDBC使用步驟
  3. Connection、Statement、ResultSet介面
  4. 使用JDBC 完成資料庫DML操作
  5. PreparedStatement物件
  6. 大資料的操作
  7. 批次處理與後設資料
  8. 事務處理
  9. 隔離級別
  10. 自定義連線池
  11. DBCP、C3p0連線池
  12. DBUtis工具類
  13. QueryRunner
  14. 自定義結果集處理
  15. 連線池知識總結

第六部分:Servlet

  1. Tomcat與Eclipse的整合開發
  2. 什麼是Servlet
  3. Servlet的進化史
  4. Servlet的最佳化過程
  5. Servlet中應用的多執行緒概念
  6. Servlet接收客戶端請求資訊
  7. Servlet響應客戶端資訊
  8. Servlet的生命週期
  9. 重定向寫法
  10. 轉發寫法
  11. 轉發和重定向區別
  12. HttpServletRequest獲取中文亂碼問題
  13. HttpServletResponse響應中文亂碼問題
  14. Servlet路徑對映問題
  15. Servlet多路徑對映

第七部分:JSP

  1. 什麼是JSP
  2. JSP的內建物件**(9?)**
  3. 透析JSP的本質
  4. JSTL+EL
  5. MVC介紹
  6. 分層的重要性
  7. Web工程中事務實現
  8. Session的使用
  9. Cookie的使用
  10. web工程中連線池的使用
  11. 實現使用者的自動登入
  12. 檔案的上傳、下載
  13. 過濾器、 監聽器
  14. 反射、註解、泛型
  15. 綜合案例練習

第八部分:AJAX

  1. Ajax技術背景
  2. Ajax技術的理解
  3. XMLHttpRequest使用步驟
  4. XMLHttpRequest GET/POST的區別
  5. 同步請求&非同步請求
  6. 同步請求&非同步請求的區別
  7. Ajax獲取不同的返回值型別
  8. Ajax使用原生JavaScript和Jquery的區別
  9. Ajax響應狀態處理
  10. JSON語法
  11. Java JSON 解析
  12. Java JSON 生成
  13. Java JSON 第三方工具快速解析
  14. JavaScript JSON轉換
  15. Jquery JSON轉換

第九部分:jQuery

  1. jQuery介紹
  2. jQuery版本介紹
  3. jQuery物件和原生js物件介紹
  4. jQuery物件和原生js物件互相轉化
  5. jQuery快速入門
  6. jQuery語法詳解
  7. jQuery核心函式
  8. jQuery onload處理
  9. jQuery選擇器
  10. jQuery 文件處理
  11. jQuery事件
  12. jQuery遍歷操作
  13. jQuery自定義函式
  14. jQuery動畫效果
  15. jQueryAJAX操作

第十部分:Bootstrap

  1. Bootstrap介紹

  2. Bootstrap開發環境搭建

  3. Bootstrap的基本模板

  4. Bootstrap快速入門

  5. Bootstrap組成

  6. 柵格系統

  7. 利用柵格系統進行移動端頁面適配

  8. Bootstrap全域性Css樣式

  9. Bootstrap修改原Css樣式進行自定義

  10. Bootstrap的js元件

  11. Bootstrap的js元件樣式修改

  12. 整合Bootstrapjs外掛之導航條

  13. 整合Bootstrapjs外掛之輪播圖

  14. 整合Bootstrapjs外掛之彈出框

  15. Bootstrap進行專案整合

    END


Java框架課程

第三階段

Java框架課程內容

  • Maven
  • Hibernate
  • Spring
  • Spring MVC
  • MyBatis
  • WebService
  • SVN
  • Activiti

第一部分:Maven

  1. Maven環境搭建
  2. Maven構建專案
  3. Maven本地倉庫配置
  4. Maven中央倉庫配置
  5. Maven基本概念
  6. Maven基本命令介紹
  7. Maven於Eclipse整合
  8. Maven於Idea整合
  9. Maven建立web工程
  10. pom.xml、依賴管理
  11. 座標、依賴、生命週期等
  12. Eclipse下的Maven使用
  13. Maven中 繼承、聚合
  14. Maven構建SSH/SSM應用
  15. 自動部署、持續整合、持續部署

第二部分:Hibernate

  1. Hibernate框架介紹
  2. Hibernate於其他框架和DBUtil工具類對比
  3. ORM思想
  4. Hibernate
  5. 與JPA關係介紹
  6. Hibernate.cfg.xml配置
  7. hbm.xml對映檔案詳解
  8. 主鍵生成策略 PO物件三種狀態分析與切換
  9. Hibernate5一級快取分析與測試
  10. Hibernate5高階對映技術
  11. 一對多對映
  12. 多對多對映
  13. Hibernate5多表聯合查詢
  14. Hibernate5延遲載入
  15. Hibernate5載入策略
  16. 二級快取

第三部分:Spring

  1. 框架原理介紹
  2. 框架環境搭建
  3. 快速入門
  4. 建立Bean的方式及實現原理
  5. Bean種類
  6. Bean生命週期
  7. Bean的作用域
  8. Bean的注值方式
  9. SpEL
  10. 整合Junit測試
  11. Web專案整合Spring
  12. 註解裝配Bean
  13. AOP思想、原理解剖
  14. 傳統方式實現AOP開發
  15. AspectJ介紹及實現AOP開發

第四部分:Spring MVC

  1. Spring MVC 概述
  2. 使用 @RequestMapping對映請求
  3. 請求處理方法簽名概述
  4. 處理方法簽名詳細說明
  5. 使用 HttpMessageConverter
  6. 處理模型資料
  7. 資料繫結流程剖析
  8. 資料格式化
  9. 資料校驗
  10. 檢視和檢視解析器
  11. 處理方法的資料繫結
  12. 檢視和檢視解析器
  13. 檔案上傳下載
  14. JSON處理
  15. 攔截器

第五部分:MyBatis

  1. MyBatis資料框架介紹
  2. MyBatis對比Hibernate框架
  3. MyBatis配置、查詢資料
  4. MyBatis全域性配置檔案
  5. MyBatis全域性配置檔案元素詳細介紹
  6. Mapper對映檔案
  7. MyBatis兩種開發方式
  8. MyBatis中別名配置
  9. MyBatis # 和 $ 拼接引數區別( 防止SQL隱碼攻擊)
  10. 關聯查詢,動態sql
  11. MyBatis快取機制、整合ehcache
  12. MyBatis二級快取處理
  13. MyBatis、Spring、SpringMVC整合
  14. 分頁外掛
  15. MyBatis逆向工程

* 第六部分:WebService

  1. WebService簡介
  2. WebService主流框架
  3. SOAP協議
  4. WSDL講解
  5. JAX-WS
  6. WebService與Spring整合
  7. JAXB
  8. JAX-RS
  9. WebService各種呼叫方式
  10. cxf的介紹
  11. cxf+jaxws基本
  12. cxf+jaxws+spring
  13. cxf+JAX-RS基本
  14. cxf+JAX-RS+spring
  15. 綜合案例

* 第七部分:SVN1

  1. SVN簡介
  2. SVN和Git對比
  3. SVN伺服器搭建
  4. SVN建立倉庫
  5. SVN建立使用者以及分配許可權
  6. SVN簽出、提交、更新
  7. Eclipse整合svn外掛
  8. Idea整合svn外掛
  9. 使用SVN更新提交
  10. SVN倉庫分析
  11. SVN協同修改&衝突解決
  12. SVN程式碼整合注意事項
  13. SVN許可權管理
  14. SVN資料回滾
  15. TortoiseSVN

* 第八部分:Activiti

  1. 工作流介紹

  2. 工作流引擎

  3. 工作流使用步驟

  4. BPMN2.0規範

  5. Activiti5框架表結構

  6. Activiti5核心元件&服務介面

  7. Activiti5外掛安裝&整合Spring

  8. 流程定義

  9. 流程例項、任務、歷史

  10. 任務領取、流程變數

  11. 排他閘道器、並行閘道器

  12. 流程事件

  13. 流程控制

  14. 監聽器

  15. 簡單整合shiro

    END


Java + 雲資料課程

第四階段

Java + 雲資料課程主要涉及的內容:

  • Linux
  • FastDFS
  • MySQL最佳化
  • Nginx反向代理
  • Quartz 作業排程
  • Redis 高效能(Key-Value)資料庫
  • Shiro 安全(許可權)框架
  • Lucene&Solr全文檢索
  • Zookeeper 分散式系統
  • MyCAT 大資料叢集
  • Dubbo實現分散式架構
  • ActiveMQ 訊息佇列
  • 分散式事務和單點登入
  • 分散式框架原理(採用影片資料教學)
  • 基於SpringMVC的整合單元測試MockMVC
  • SpringBoot 快速構建JavaEE專案

第一部分:Linux版本

  • Linux簡介和安裝
  • Linux和Windows的區別
  • Linux遠端登入
  • Linux常用命令
  • Linux檔案管理
  • Linux使用者管理
  • Linux使用者組管理
  • Linux磁碟管理
  • Linux系統管理
  • Linux常用檔案
  • Linux JDK安裝
  • Linux Tomcat安裝
  • Linux MySQL安裝

第二部分:FastDFS

  1. FastDFS簡介
  2. FastDFS單節點安裝
  3. FastDFS Tracker和Storage節點操作
  4. FastDFS 配置Tracker伺服器
  5. FastDFS 配置Storage伺服器
  6. FastDFS JavaClient端 檔案上傳
  7. FastDFS JavaClient端 檔案下載

第三部分:MySQL最佳化

  1. 最佳化資料訪問
  2. 重構查詢的方式
  3. 查詢快取
  4. 切分查詢
  5. MySQL索引
  6. MySQL鎖
  7. MySQL執行計劃
  8. MySQL儲存引擎
  9. Schema與資料型別最佳化

第四部分:Nginx反向代理

  1. Nginx反向代理介紹
  2. Nginx 下載和安裝
  3. Nginx 編譯和啟動、訪問
  4. 在Linux下搭建Nginx叢集
  5. 在Windows搭建Nginx叢集
  6. 解決Session共享問題

第五部分:Quartz 作業排程

  1. Quartz作業排程簡介
  2. Quartz作業排程執行以及永續性
  3. Quartz基本使用
  4. Quartz核心類講解
  5. Quartz Trigger 觸發器
  6. Quartz Job&JobDetail
  7. Quartz Calendars日曆講解
  8. JobListener監聽器和TriggerListener監聽器
  9. Spring整合Quartz

第六部分:Redis 高效能(Key-Value)資料庫

  1. NoSQL 發展史簡介
  2. Redis 簡介
  3. Redis 安裝以及除錯
  4. Redis 常用指令
  5. Redis 高階使用(主從複製、哨兵模式、持久化機制)
  6. Jedis的基本使用
  7. SSM框架基於Redis實現快取
  8. Redis 連線單機版
  9. Redis 連線單機版使用連線池
  10. 封裝和整合Spring
  11. Redis 叢集搭建

第七部分:Shiro 安全(許可權)框架

  1. Shiro功能簡介
  2. Shiro框架介紹
  3. ShiroFilter工作原理
  4. Shiro 身份認證
  5. Shiro Realm以及Authenticator
  6. Shiro攔截器和Permissions(授權)
  7. Shiro 自定義攔截器
  8. Shiro Session會話
  9. Shiro RememberMe功能
  10. SSM整合Shiro綜合許可權選單

第八部分:Lucene&Solr全文檢索

  1. Lucene 搜尋引擎介紹
  2. Lucene 中文分詞器配置
  3. Lucene 索引的維護包括建立、刪除、修改操作
  4. Lucene Query 各種查詢方法
  5. Lucene 高亮顯示
  6. Lucene Facet分面檢索
  7. Solr簡介
  8. Solr 安裝和配置
  9. Solr 索引庫管理
  10. 什麼是SolrCloud
  11. Solr叢集的系統架構
  12. 將搜尋功能切換到叢集版

第九部分:Zookeeper 分散式系統

  1. Zookeeper 簡介
  2. Zookeeper 特點
  3. Zookeeper 安裝和配置
  4. Zookeeper資料型別
  5. Zookeeper服務中操作
  6. Zookeeper Wacth觸發器
  7. Zookeeper分散式應用

第十部分:MyCAT 大資料叢集

  1. MyCat 簡介
  2. MyCat的下載和安裝
  3. MyCat分片配置
  4. MyCat分片使用和測試
  5. MyCat讀寫分離
  6. MyCat 實現從MySQL主從複製

第十一部分:Dubbo實現分散式架構

  1. Dubbo簡介
  2. 單一應用框架
  3. 垂直應用框架
  4. 分散式應用框架
  5. 流動計算機架構
  6. Dubbo 能做什麼
  7. Dubbo 實現原理
  8. Dubbo 分散式叢集模型
  9. Dubbo管理控制檯安裝
  10. Dubbo 整合 SSM

第十二部分:ActiveMQ 訊息佇列

  1. ActiveMQ簡介
  2. JMS簡介
  3. MQ 訊息中介軟體
  4. ActiveMQ 安裝和使用
  5. ActiveMQ 訊息過濾
  6. ActiveMQ 訊息釋出和訂閱模式
  7. ActiveMQ訊息持久化
  8. ActiveMQ與Spring 整合

第十三部分:分散式事務和單點登入

  1. 階段提交協議講解
  2. 使用訊息佇列來避免分散式事務
  3. 如何可靠儲存憑證
  4. 業務與訊息解耦方式
  5. 如何解決訊息重複投遞的問題
  6. 什麼是單點登入
  7. 單點登入技術的實現機制

第十四部分:分散式框架原理(採用影片資料教學)

  1. 傳統垂直mvc專案
  2. 垂直架構的缺點
  3. RPC架構
  4. RPC架構的核心技術點
  5. RPC架構的問題
  6. SOA服務化架構
  7. 框架設計原理
  8. 框架效能、可靠性、功能
  9. 協議棧(通訊模型、協議訊息定義、安全性設計)
  10. 服務路由
  11. 叢集容錯

第十五部分:基於SpringMVC的整合單元測試MockMVC

  1. Mock測試框架的介紹
  2. SpringMVC Mock 配置的步驟
  3. 基於SpringMVC單元測試實戰案例
  4. 基於SpringMVC+JPA單元測試實戰案例

第十六部分:SpringBoot 快速構建JavaEE專案

  1. 基於SpringBoot 的thymeleaf 模板引擎
  2. 基於SpringBoot 多模組實戰開發
  3. 基於SpringBoot 檔案上傳
  4. 基於SpringBoot Data Solr搜尋引擎開發
  5. 基於SpringBoot Email郵件傳送
  6. 基於SpringBoot 的Redis實戰開發
  7. 基於SpringBoot 的WebSocket實戰開發
  8. 基於SpringBoot 的ActiveMQ訊息佇列END


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/30239065/viewspace-2722769/,如需轉載,請註明出處,否則將追究法律責任。

相關文章