課程中詳細演示了一個應用從單塊架構到垂直應用架構再到分散式服務架構的演進過程。講解瞭如何在前後端分離的架構下設計RESTful API。最終的系統對外提供REST風格的http服務,內部各個垂直應用通過dubbo共用無狀態的Java服務。整個系統在Web層和服務層都可以無縫的橫向擴展。 ...
本課程主要是使用 Spring技術棧 + dubbo開發一個類似噹噹的圖書電商後臺的實戰教程。
課程特點:
1.課程的技術體系足夠系統、全面以及細緻:課程中涉及的主要技術包括:
Spring IO (依賴版本管理),
Spring Boot(自動化配置,零XML),
Spring MVC (RESTful API開發) ,
Spring Security, Spring Security Oauth(RESTful API安全),
Spring Framework(基礎框架,服務層開發),
Spring Data JPA(數據持久層開發,零SQL),
Dubbo(服務治理).
所有的技術全部使用現在的最新版本。
2.全程案例實戰驅動講解和動手演練,每個知識點都會通過實際的代碼樣例來演示其原理和特性,以模擬真實的案例來驅動講解各種技術點,幫助同學們在業務背景中理解和掌握複雜的技術。
3.測試驅動開發,整個課程全部採用測試驅動開發的方式,先編寫自動化測試用例,然後編寫業務代碼,在掌握開發技術的基礎上,還可以學習到如何針對持久層、業務層和WEB服務層進行單元測試。
4.課程包含很多全網獨家的、深入細緻的技術講解以及解密。例如:Spring Data Jpa映射策略,繼承策略,抓取策略的控制。讓你全面掌握這個強大的ORM框架的每個細節。Spring MVC開發RESTful API時各種映射的處理,異常的處理,非同步請求的處理,服務的偽造和文檔的自動生成等。Spring Security的詳細說明,各種實際的認證和授權需求的處理方法,如何擴展框架的功能,如何與第三方登錄或單點登錄集成等等。Spring Boot與Dubbo的整合,處理服務的日誌、事務、消息、定時任務,多線程等問題。
5.課程中詳細演示了一個應用從單塊架構到垂直應用架構再到分散式服務架構的演進過程。講解瞭如何在前後端分離的架構下設計RESTful API。最終的系統對外提供REST風格的http服務,內部各個垂直應用通過dubbo共用無狀態的Java服務。整個系統在Web層和服務層都可以無縫的橫向擴展。
課程學完以後能夠達到的效果:
1.可以獨立搭建分散式RESTful API開發框架
2.可以使用Spring Boot和Spring IO簡化Spring項目的配置,提高開發速度。
3.可以使用Spring Data JPA操作關係型資料庫,完全面向對象,零SQL的快速開發資料庫持久層服務,掌握如何控制自動生成的SQL,確保整個資料庫持久層的性能。
4.可以使用Spring MVC快速開發RESTful的API,並處理WEB層常見的問題。掌握異常的處理,文件上傳下載,服務的偽造和文檔的自動生成,使用非同步方式處理Http請求以提高中間件吞吐量等技術。
5.可以使用Spring Security保護RESTful API的安全,通過JavaConfig的方式快速實現各種常見的認證授權需求。掌握‘記住我’,Session管理,第三方(QQ,微信,微博等)登錄,單點登錄等常見需求的實現方式。
6.理解分散式服務架構,使用Dubbo搭建分散式服務框架,並與Spring Boot和Spring framework結合,處理服務的日誌、事務、消息、緩存、定時任務,多線程等問題。
課程主要章節如下:
01.課程介紹,架構說明,案例說明,前置知識
02.環境設置(JDK8, STS, Maven, Spring IO, Spring Boot)
03.Spring Data JPA簡介
04.對象映射-基本屬性映射
05.對象映射-全局命名策略
06.對象映射-雙向一對多關係映射
07.對象映射-多對多和一對一關係映射
08.對象映射-繼承關係映射
09.Repository-基本增刪改查
10.Repository-分頁和排序
11.Repository-靜態查詢
12.Repository-動態查詢
13.Repository-自定義Repository實現
14.高級話題-持久化上下文
15.高級話題-抓取策略
16.高級話題-繼承策略1
17.高級話題-繼承策略2
18.高級話題-樂觀鎖
19.高級話題-Hibernate Validator
20.資料庫開發小結
21.RestAPI開發-概述
22.RestAPI開發-查詢圖書請求處理
23.RestAPI開發-參數映射,分頁和排序
24.RestAPI開發-正則表達式和JsonView
25.RestAPI開發-新建圖書請求處理
26.RestAPI開發-修改和刪除,Cookie和Header
27.RestAPI開發-異常和靜態資源處理
28.RestAPI開發-攔截器和過濾器
29.RestAPI開發-文件上傳下載處理
30.RestAPI開發-非同步處理Http請求
31.RestAPI開發-使用Swagger生成文檔
32.RestAPI開發-使用WireMock偽造服務
33.RestAPI安全-Spring Security概述和基本配置
34.RestAPI安全-Spring Security內置過濾器鏈介紹
35.RestAPI安全-實現Http Basic認證
36.RestAPI安全-實現表單認證
37.RestAPI安全-實現'記住我'功能
38.RestAPI安全-在Spring Security中管理Session
39.RestAPI安全-瞭解授權決策
40.RestAPI安全-使用配置控制URL許可權
41.RestAPI安全-使用註解控制方法許可權
42.RestAPI安全-自定義授權策略
43.RestAPI安全-常見攻擊方式及防護
44.RestAPI安全-OAuth協議介紹
45.RestAPI安全-使用Spring Security OAuth實現第三方登錄
46.RestAPI安全-整合CAS實現SSO
47.分散式服務開發-服務層架構概述
48.分散式服務開發-重構代碼結構,引入dubbo
49.分散式服務開發-實現增刪改查服務1
50.分散式服務開發-實現增刪改查服務2
51.分散式服務開發-使用logback記錄日誌
52.分散式服務開發-使用AOP創建全局日誌切片
53.分散式服務開發-事務控制
54.分散式服務開發-緩存處理
55.分散式服務開發-定時任務處理
56.分散式服務開發-配置信息處理
57.分散式服務開發-使用多線程開發提升系統吞吐量1
58.分散式服務開發-使用多線程開發提升系統吞吐量2
59.持續集成概述
60.使用jenkins實現持續集成