關于我們
書單推薦
新書推薦
|
Spring 5開發(fā)大全 讀者對象:普通讀者
自 Spring 誕生以來,以 Spring 技術棧為核心的企業(yè)級應用開發(fā)方式深入人心,已經(jīng)成為 Java EE 開發(fā)的**實踐。隨著 Spring 5 版本的發(fā)布, Spring 自身也發(fā)生了巨大的變革。本書力求全面介紹 Spring 框架,涵蓋了 Spring 核心、測試、數(shù)據(jù)訪問、 Web 開發(fā)、響應式編程、系統(tǒng)集成及微服務等方面在內(nèi)的共 26 章的內(nèi)容,可以說是 Spring 技術的百科全書。同時,本書基于 Spring 5 版本來編寫,除了涉及 Spring 5 版本的新特性外,還介紹了 REST 服務、響應式 Web 開發(fā)、微服務設計、 Spring Boot、 Spring Cloud 等方面的前瞻技術。而且除了講解 Spring 的理論知識外,還在每個知識點上輔以大量的代碼案例,使理論可以聯(lián)系實際,具備更強的可操作性。
本書主要面向的是 Java 開發(fā)者,以及對以 Spring 為核心的 Java EE 開發(fā)感興趣的計算機專業(yè)的學生、軟件開發(fā)人員和系統(tǒng)架構師。
前瞻
本書基于Spring 5版本編寫,除講解Spring 5新特性外,還介紹了REST 服務、響應式Web 開發(fā)、微服務設計、Spring Boot及Spring Cloud等方面的前瞻技術。 全面 本書全面介紹Spring框架,涵蓋Spring核心、測試、數(shù)據(jù)訪問、系統(tǒng)集成、Web開發(fā)、響應式編程及微服務等方面在內(nèi)的26章的內(nèi)容,可以說是Spring技術的百科全書。 實用 本書除了講解Spring的理論知識外,還在每個知識點上輔以大量的實戰(zhàn)案例,使理論可以聯(lián)系實際,具備更強的可操作性。 簡明 目錄標注有新功能實戰(zhàn)難點及重點等標識,方便讀者做好知識點的歸納和總結。 權威 以Spring官方文檔和Spring框架源碼為主要參考依據(jù),確保知識點的正確性。
柳偉衛(wèi)(英文名Way Lau),關注編程、系統(tǒng)架構、性能優(yōu)化。在大型IT公司擔任過項目經(jīng)理、架構師、高級開發(fā)顧問等職位,具有多年軟件開發(fā)管理及系統(tǒng)架構經(jīng)驗。負責過多個省級、***大型分布式系統(tǒng)的微服務架構的技術改造,在實際工作中積累了大量的微服務架構經(jīng)驗。是CSDN、開源中國、云棲社區(qū)等技術區(qū)專家。已出版專著《Spring Boot企業(yè)級應用開發(fā)實戰(zhàn)》《Spring Cloud微服務架構開發(fā)實戰(zhàn)》。
目錄
第1章Spring 5 概述 1.1 Spring 與 Java EE 1.1.1?Java 平臺發(fā)展簡史 1.1.2?Java EE 現(xiàn)狀 重點1.1.3?Spring 與 Java EE 的關系 1.2 Spring 簡史 1.2.1?挑釁 EJB 1.2.2?化繁為簡 難點1.2.3?Spring 設計哲學 重點1.2.4?面向未來的 Spring 1.3 Spring 5 的新特性 1.3.1?基準升級 1.3.2?兼容 JDK 9 1.3.3?響應式編程模型 1.3.4?函數(shù)式編程 1.3.5?多語言的支持 1.3.6?支持 HTTP/2 1.3.7?清理了代碼 1.3.8?更強的測試套件 1.4 快速開啟**個 Spring 應用 實戰(zhàn)1.4.1?Hello World項目概述 重點1.4.2?使用 Maven 重點1.4.3?使用 Gradle 重點1.4.4?創(chuàng)建服務類 1.4.5?創(chuàng)建打印器 1.4.6?創(chuàng)建應用主類 1.4.7?運行 1.5 Gradle 與 Maven 的抉擇 1.5.1?Maven 概述 1.5.2?Gradle 概述 1.5.3?Gradle 與 Maven 對比 第2章Spring 框架核心概念 2.1 Spring 框架總覽 重點2.1.1?Spring 的狹義與廣義 2.1.2?Spring 框架概述 難點2.1.3?Spring 框架常用模塊 2.1.4?Spring 設計模式 2.2 IoC 容器 難點2.2.1?依賴注入與控制反轉(zhuǎn) 難點2.2.2?IoC 容器和 bean 重點2.2.3?配置元數(shù)據(jù) 重點2.2.4?實例化容器 2.2.5?使用容器 2.2.6?bean 的命名 2.2.7?實例化 bean 的方式 重點2.2.8?注入方式 重點2.2.9?實戰(zhàn):依賴注入的例子 2.2.10?依賴注入的詳細配置 難點2.2.11?使用 depends-on 2.2.12?延遲加載 bean 重點2.2.13?自動裝配 2.2.14?方法注入 難點2.2.15?bean scope 重點2.2.16?singleton bean 與 prototype bean 2.2.17?request、session、application 及 websocket scope 2.2.18?自定義 scope 2.2.19?實戰(zhàn):自定義 scope 的例子 2.2.20?自定義 bean 的生命周期 難點 2.2.21?bean 定義繼承 難點 2.2.22?容器擴展點 2.2.23?實戰(zhàn):容器擴展的例子 重點2.2.24?基于注解的配置 2.2.25?基于注解的配置與基于 XML 的配置 重點2.2.26?類路徑掃描及組件管理 2.2.27?JSR-330 規(guī)范注解 重點2.2.28?基于 Java 的容器配置 重點2.2.29?環(huán)境抽象 2.2.30?國際化 2.2.31?事件與監(jiān)聽器 2.3 AOP 編程 2.3.1?AOP 概述 重點2.3.2?AOP 核心概念 2.3.3?Spring AOP 難點2.3.4?AOP 代理 2.3.5?使用 @AspectJ 2.3.6?實戰(zhàn):使用 @AspectJ 的例子 重點2.3.7?基于 XML 的 AOP 2.3.8?實戰(zhàn):基于 XML 的 AOP 例子 2.3.9?如何選擇 AOP 類型 難點2.3.10?理解代理機制 2.3.11?創(chuàng)建 @AspectJ 代理 2.4 資源處理 重點2.4.1?常用資源接口 2.4.2?內(nèi)置資源接口實現(xiàn) 2.4.3?ResourceLoader 重點2.4.4?ResourceLoaderAware 2.4.5?資源作為依賴 2.5 Bean 驗證 重點2.5.1?Bean 驗證概述 2.5.2?Validator 接口 2.6 表達式語言 SpEL 2.6.1?SpEL 概述 難點2.6.2?表達式接口 2.6.3?對于 bean 定義的支持 重點2.6.4?常用表達式 2.6.5?實戰(zhàn):使用 SpEL 的例子 2.7 數(shù)據(jù)緩沖器和編解碼器 2.7.1?數(shù)據(jù)緩沖器 2.7.2?編解碼器 2.8 空安全 2.8.1?空安全概述 2.8.2?如何使用 第3章測試 3.1 測試概述 3.1.1?傳統(tǒng)的測試所面臨的問題 3.1.2?如何破解測試面臨的問題 3.2 測試的類型和范圍 3.2.1?測試類型 3.2.2?測試范圍 3.2.3?測試比例 3.3 如何進行微服務的測試 3.3.1?微服務的單元測試 3.3.2?mock 與 stub 的區(qū)別 3.3.3?微服務的集成測試 3.3.4?微服務的系統(tǒng)測試 第4章單元測試 4.1 Mock 對象 重點4.1.1?Environment 4.1.2?JNDI 重點4.1.3?Servlet API 新功能4.1.4?Spring Web Reactive 4.2 測試工具類 4.2.1?測試工具 4.2.2?測試 Spring MVC 第5章集成測試 5.1 集成測試概述 難點5.1.1?上下文管理與緩存 重點5.1.2?測試夾具的依賴注入 重點5.1.3?事務管理 重點5.1.4?集成測試類 測試5.1.5?JDBC 5.2 測試相關的注解 5.2.1?@BootstrapWith 5.2.2?@ContextConfiguration 5.2.3?@WebAppConfiguration 5.2.4?@ContextHierarchy 5.2.5?@ActiveProfiles 5.2.6?@TestPropertySource 5.2.7?@DirtiesContext 5.2.8?@TestExecutionListeners 5.2.9?@Commit 5.2.10?@Rollback 5.2.11?@BeforeTransaction 5.2.12?@AfterTransaction 5.2.13?@Sql 5.2.14?@SqlConfig 5.2.15?@SqlGroup 5.2.16?標準注解 5.2.17?Spring JUnit 4 注解 新功能5.2.18?Spring JUnit Jupiter 注解 5.2.19?元注解 難點5.3 Spring TestContext 框架 5.3.1?Spring TestContext 框架概述 5.3.2?核心抽象 5.3.3?引導 TestContext 5.3.4?TestExecutionListener 配置 難點5.3.5?上下文管理 5.3.6?測試夾具的依賴注入 難點5.3.7?如何測試 request bean 和 session bean 重點5.3.8?事務管理 5.3.9?執(zhí)行 SQL 腳本 新功能5.3.10?并行測試 新功能5.3.11?SpringExtension 測試類 5.4 Spring MVC Test 框架 5.4.1?服務端測試概述 難點5.4.2?選擇測試策略 重點5.4.3?設置測試功能 重點5.4.4?執(zhí)行請求 難點5.4.5?定義期望 5.4.6?注冊過濾器 5.4.7?脫離容器的測試 5.4.8?實戰(zhàn):服務端測試的例子 5.4.9?HtmlUnit 集成 5.4.10?客戶端 REST 測試 5.4.11?實戰(zhàn):客戶端 REST 測試的例子 ★新功能 5.5 WebTestClient 5.5.1?WebTestClient 概述 5.5.2?設置 WebTestClient 5.5.3?如何編寫測試用例 5.5.4?處理空內(nèi)容 5.5.5?處理 JSON 5.5.6?處理流式響應 第6章事務管理 6.1 事務管理概述 6.1.1?Spring 事務管理優(yōu)勢 難點6.1.2?Spring 事務模型 6.2 通過事務實現(xiàn)資源同步 6.2.1?高級別的同步方法 6.2.2?低級別的同步方法 6.2.3?TransactionAwareDataSourceProxy 6.3 聲明式事務管理 重點6.3.1?聲明式事務管理 6.3.2?實戰(zhàn):聲明式事務管理的例子 重點6.3.3?事務回滾 6.3.4?配置不同的事務策略 重點6.3.5?@Transactional 詳解 重點6.3.6?事務傳播機制 6.4 編程式事務管理 6.4.1?編程式事務管理概述 6.4.2?聲明式事務管理和編程式事務管理 6.5 事件中的事務 第7章DAO 7.1 DAO 概述 7.2 DAO 常用異常類 7.3 DAO 常用注解 第8章基于 JDBC 的數(shù)據(jù)訪問 8.1 Spring JDBC 概述 8.1.1?不同的 JDBC 訪問方式 8.1.2?Spring JDBC 包 8.2 JDBC 核心類 重點8.2.1?JdbcTemplate 8.2.2?實戰(zhàn):使用 JdbcTemplate 的例子 8.2.3?NamedParameterJdbcTemplate 8.2.4?SQLExceptionTranslator 重點8.2.5?執(zhí)行語句 重點8.2.6?運行查詢 重點8.2.7?更新數(shù)據(jù) 8.2.8?檢索自動生成的主鍵 8.3 控制數(shù)據(jù)庫連接 8.4 批處理 8.4.1?使用 JdbcTemplate 實現(xiàn)批處理 8.4.2?批量更新 List 8.4.3?多個批次更新 8.5 SimpleJdbc 類 8.5.1?使用 SimpleJdbcInsert 插入數(shù)據(jù) 8.5.2?使用 SimpleJdbcInsert 檢索自動生成的主鍵 8.5.3?使用 SqlParameterSource 8.5.4?使用 SimpleJdbcCall 8.6 JDBC 轉(zhuǎn)為對象模型 8.6.1?SqlQuery 8.6.2?MappingSqlQuery 8.6.3?SqlUpdate 8.6.4?StoredProcedure 8.6.5?實戰(zhàn):JDBC 轉(zhuǎn)為對象模型的例子 8.7 內(nèi)嵌數(shù)據(jù)庫 重點8.7.1?使用內(nèi)嵌數(shù)據(jù)庫的好處 8.7.2?使用 Spring XML 創(chuàng)建內(nèi)存數(shù)據(jù)庫 8.7.3?編程方式創(chuàng)建內(nèi)存數(shù)據(jù)庫 8.7.4?實戰(zhàn):使用內(nèi)存數(shù)據(jù)庫進行測試的例子 8.8 初始化 DataSource 第9章基于 ORM 的數(shù)據(jù)訪問 9.1 Spring ORM 概述 9.2 ORM 集成注意事項 重點9.2.1?資源與事務管理 難點9.2.2?異常處理 9.3 集成 Hibernate 重點9.3.1?設置 SessionFactory 9.3.2?基于 Hibernate 的 DAO 重點9.3.3?聲明式事務 重點9.3.4?編程事務 9.3.5?事務管理策略 9.4 JPA 9.4.1?設置 JPA 不同方式 重點9.4.2?基于 JPA 的 DAO 9.4.3?JPA 事務 重點9.4.4?JpaDialect 9.4.5?JTA 事務管理 第10章XML 與對象的轉(zhuǎn)換 10.1 XML 解析概述 10.2 XML 的序列化與反序列化 10.2.1?序列化接口 Marshaller 10.2.2?反序列化接口 Unmarshaller 10.2.3?XML 解析異常類 重點10.2.4?如何使用 XML 的序列化與反序列化 10.2.5?XML 配置命名空間 10.3 常用 XML 解析工具 10.3.1?JAXB 10.3.2?Castor 10.3.3?JiBX 10.3.4?XStream 10.3.5?實戰(zhàn):使用 JAXB 解析 XML 的例子 第11章Spring Web MVC 11.1 Spring Web MVC 概述 11.2 DispatcherServlet 11.2.1?DispatcherServlet 概述 重點11.2.2?上下文層次結構 11.2.3?特定的 bean 重點11.2.4?框架配置 11.2.5?容器配置 11.2.6?處理流程 11.2.7?攔截 11.2.8?視圖解析 11.2.9?語言環(huán)境 重點11.2.10?Multipart 請求 11.3 過濾器 11.3.1?HTTP PUT 表單 11.3.2?轉(zhuǎn)發(fā)頭 11.3.3?ShallowEtagHeaderFilter 11.3.4?CORS 11.4 控制器 11.4.1?控制器概述 重點11.4.2?聲明控制器 重點11.4.3?請求映射 重點11.4.4?處理器方法 重點11.4.5?模型方法 11.4.6?綁定器方法 11.5 URI 處理 11.5.1?URI 鏈接 11.5.2?鏈接到控制器 11.5.3?視圖中的鏈接 11.6 異常處理 11.6.1?異常處理概述 11.6.2?@ExceptionHandler 11.6.3?框架異常處理 11.6.4?REST API 異常 11.6.5?注解異常 11.6.6?容器錯誤頁面 11.7 異步請求 難點11.7.1?異步請求處理流程 11.7.2?異常處理 11.7.3?異步攔截器 難點11.7.4?流式響應 重點11.7.5?Server-Sent Events 11.7.6?發(fā)送原生數(shù)據(jù) 新功能11.7.7?響應式返回值 11.7.8?配置 11.8 CORS 處理 重點11.8.1?CORS 概述 重點11.8.2?@CrossOrigin 11.8.3?全局 CORS 配置 11.8.4?自定義CORS 11.8.5?CORS 過濾器 11.9 HTTP 緩存 11.9.1?HTTP 緩存概述 重點11.9.2?緩存控制 重點11.9.3?靜態(tài)資源 11.9.4?控制器緩存 11.10 MVC 配置 11.10.1?啟用 MVC 配置 11.10.2?類型轉(zhuǎn)換 11.10.3?驗證 重點 11.10.4?攔截器 11.10.5?內(nèi)容類型 重點11.10.6?消息轉(zhuǎn)換器 重點11.10.7?視圖控制器 重點11.10.8?視圖解析器 重點11.10.9?靜態(tài)資源 11.10.10?DefaultServletHttpRequestHandler 難點11.10.11?路徑匹配 11.11 視圖處理 重點11.11.1?常用視圖技術 11.11.2?文檔視圖 11.11.3?Feed 視圖 ★新功能 11.12 HTTP/2 11.12.1?TLS 的考慮 11.12.2?容器配置 實戰(zhàn)11.13 基于 Spring Web MVC 的 REST 接口 11.13.1?系統(tǒng)概述 難點11.13.2?接口設計 重點11.13.3?系統(tǒng)配置 重點11.13.4?后臺編碼實現(xiàn) 重點11.13.5?應用配置 11.13.6?運行 第12章REST 客戶端 12.1 RestTemplate ★新功能 12.2 WebClient 實戰(zhàn)12.3 基于 RestTemplate 的天氣預報服務 重點12.3.1?系統(tǒng)配置 重點12.3.2?后臺編碼實現(xiàn) 12.3.3?運行 第13章WebSocket 13.1 WebSocket 概述 13.1.1?HTTP和WebSocket 重點13.1.2?理解 WebSocket 使用場景 13.2 WebSocket 常用 API 重點13.2.1?WebSocketHandler 13.2.2?WebSocket 握手 13.2.3?部署 重點13.2.4?配置 13.2.5?跨域處理 13.3 SockJS 13.3.1?SockJS 概述 13.3.2?啟用 SockJS 13.3.3?心跳 13.3.4?客戶端斷開連接 13.3.5?CORS 處理 13.3.6?SockJsClient 13.4 STOMP 13.4.1?STOMP 概述 13.4.2?啟用 STOMP 重點13.4.3?消息流程 13.4.4?處理器方法 重點13.4.5?發(fā)送消息 13.4.6?內(nèi)嵌 Broker和外部 Broker 重點13.4.7?連接到 Broker 13.4.8?認證 重點13.4.9?用戶目的地 13.4.10?事件和攔截 13.4.11?STOMP 客戶端 13.4.12?WebSocket Scope 難點13.4.13?性能優(yōu)化 13.5 基于 STOMP 的聊天室 實戰(zhàn)13.5.1?聊天室項目的概述 重點13.5.2?設置 Broker 重點13.5.3?服務端編碼 重點13.5.4?客戶端編碼 13.5.5?運行 第14章Spring WebFlux ★新功能 14.1 響應式編程概述 14.1.1?響應式編程簡述 重點14.1.2?Spring WebFlux 與 Spring MVC 的區(qū)別 重點14.1.3?響應式 API 難點14.1.4?響應式編程模型 ★新功能 14.2 Spring 中的響應式編程 重點14.2.1?HttpHandler 重點14.2.2?WebHandler API 14.2.3?編碼器和解碼器 ★新功能 14.3 DispatcherHandler 重點14.3.1?Spring WebFlux 常用 bean 14.3.2?配置 14.3.3?執(zhí)行 ★新功能 14.4 控制器 重點14.4.1?@Controller 重點14.4.2?請求映射 重點14.4.3?處理器方法 ★新功能 14.5 常用函數(shù) 重點14.5.1?HandlerFunction 重點14.5.2?RouterFunction 14.5.3?運行服務器 14.5.4?HandlerFilterFunction ★新功能 14.6 WebFlux 相關配置 重點14.6.1?啟用 WebFlux 難點14.6.2?配置 WebFlux 重點14.6.3?數(shù)據(jù)轉(zhuǎn)換 重點14.6.4?數(shù)據(jù)驗證 重點14.6.5?內(nèi)容類型解析器 重點14.6.6?HTTP 消息編碼器和解碼器 重點14.6.7?視圖解析器 重點14.6.8?靜態(tài)資源 重點14.6.9?路徑匹配 ★新功能 14.7 CORS 處理 重點14.7.1?CORS 概述 重點14.7.2?@CrossOrigin 14.7.3?全局CORS 配置 14.7.4?自定義CORS 14.7.5?CORS 過濾器 第15章響應式編程中的 WebClient ★新功能 重點 15.1 retrieve() 方法 ★新功能 重點 15.2 exchange() 方法 ★新功能 15.3 請求主體 重點15.3.1?處理 Form 表單數(shù)據(jù) 重點15.3.2?處理文件上傳數(shù)據(jù) ★新功能 15.4 生成器 ★新功能 15.5 過濾器 ★新功能 實戰(zhàn) 15.6 基于 WebClient 的文件上傳、下載 15.6.1?應用的概述 重點15.6.2?文件上傳的編碼實現(xiàn) 重點15.6.3?文件下載的編碼實現(xiàn) 15.6.4?運行 第16章響應式編程中的 WebSocket 16.1 WebSocket 概述 16.2 WebSocket 常用 API 重點16.2.1?WebSocketHandler 16.2.2?WebSocket 握手 重點16.2.3?配置 16.2.4?跨域處理 ★新功能 16.3 WebSocketClient 第17章常用集成模式 17.1 Spring 集成模式概述 17.2 使用 RMI 重點17.2.1?使用 RmiServiceExporter 暴露服務 重點17.2.2?客戶端訪問服務 17.3 使用 Hessian 重點17.3.1?編寫 DispatcherServlet 重點17.3.2?使用 HessianServiceExporter 暴露 bean 重點17.3.3?客戶端訪問服務 17.3.4?在 Hessian 中使用基本認證 17.4 使用 HTTP 重點17.4.1?暴露服務 重點17.4.2?客戶端訪問服務 17.5 Web 服務 重點17.5.1?暴露基于 JAX-WS 的 Web 服務 重點17.5.2?訪問服務 17.6 JMS 17.6.1?JMS 概述 重點17.6.2?服務端配置 重點17.6.3?客戶端配置 17.7 REST 服務 重點17.7.1?RestTemplate 17.7.2?HTTP 消息轉(zhuǎn)換器 第18章EJB 集成 18.1 EJB 集成概述 18.2 EJB 集成的實現(xiàn) 18.2.1?訪問本地 SLSB 18.2.2?訪問遠程 SLSB 第19章JMS 集成 19.1 JMS 集成概述 19.2 Spring JMS 重點19.2.1?JmsTemplate 重點19.2.2?連接管理 重點19.2.3?目的地管理 19.2.4?消息監(jiān)聽器容器 重點19.2.5?事務管理 19.3 發(fā)送消息 19.3.1?使用消息轉(zhuǎn)換器 19.3.2?回調(diào) 19.4 接收消息 19.4.1?同步接收 重點19.4.2?異步接收 19.4.3?SessionAwareMessageListener 19.4.4?MessageListenerAdapter 19.4.5?處理事務 重點 19.5 JCA 消息端點 19.6 基于注解的監(jiān)聽器 19.6.1?啟用基于注解的監(jiān)聽器 重點19.6.2?編程式端點注冊 重點19.6.3?基于注解的端點方法簽名 19.6.4?響應管理 19.7 JMS 命名空間 難點19.8 基于 JMS 的消息發(fā)送、接收 19.8.1?項目概述 19.8.2?配置 19.8.3?編碼實現(xiàn) 19.8.4?運行 第20章JMX 集成 20.1 JMX 集成概述 20.2 bean 轉(zhuǎn)為 JMX 重點20.2.1?創(chuàng)建 MBeanServer 20.2.2?重用 MBeanServer 20.2.3?延遲實例化 MBean 20.2.4?MBean 自動注冊 重點20.2.5?控制注冊行為 20.3 bean 的控制管理 20.3.1?MBeanInfoAssembler 重點20.3.2?注解 20.3.3?AutodetectCapableMBeanInfoAssembler 重點20.3.4?定義管理接口 20.3.5?MethodNameBasedMBeanInfoAssembler 20.4 通知 20.4.1?注冊監(jiān)聽器 20.4.2?發(fā)布通知 第21章JCA CCI 集成 21.1 JCA CCI 集成概述 21.2 配置 CCI 21.2.1?連接器配置 21.2.2?ConnectionFactory 配置 21.2.3?配置連接 21.3 使用 CCI 進行訪問 21.3.1?記錄轉(zhuǎn)換 重點21.3.2?CciTemplate 21.3.3?DAO 21.3.4?自動輸出記錄生成 21.4 CCI 訪問對象建模 21.4.1?MappingRecordOperation 21.4.2?MappingCommAreaOperation 21.5 CCI 中的事務處理 第22章使用 E-mail 22.1 使用 E-mail 概述 22.2 實現(xiàn)發(fā)送 E-mail 重點22.2.1?MailSender 和 SimpleMailMessage 的基本用法 重點22.2.2?JavaMailSender 和 MimeMessagePreparator 的用法 22.3 使用 MimeMessageHelper 難點22.3.1?發(fā)送附件和內(nèi)聯(lián)資源 重點22.3.2?使用模板創(chuàng)建 E-mail 內(nèi)容 實戰(zhàn)22.4 實現(xiàn) E-mail 服務器 22.4.1?項目概述 22.4.2?E-mail 服務器編碼實現(xiàn) 22.4.3?格式化 E-mail 內(nèi)容 22.4.4?運行 第23章任務執(zhí)行與調(diào)度 23.1 任務執(zhí)行與調(diào)度概述 23.2 TaskExecutor 23.2.1?TaskExecutor 類型 23.2.2?使用 TaskExecutor 23.3 TaskScheduler 23.3.1?Trigger 接口 23.3.2?實現(xiàn) 23.4 任務調(diào)度及異步執(zhí)行 23.4.1?啟用調(diào)度注解 重點23.4.2?@Scheduled 重點23.4.3?@Async 23.4.4?@Async 的異常處理 23.4.5?命名空間 23.5 使用 Quartz Scheduler 23.5.1?使用 JobDetailFactoryBean 23.5.2?使用 MethodInvokingJobDetailFactoryBean 實戰(zhàn)23.6 基于 Quartz Scheduler 的天氣預報系統(tǒng) 23.6.1?項目概述 23.6.2?后臺編碼實現(xiàn) 23.6.3?運行 第24章緩存 24.1 緩存概述 24.2 聲明式緩存注解 重點24.2.1?@Cacheable 重點24.2.2?@CachePut 重點24.2.3?@CacheEvict 重點24.2.4?@Caching 24.2.5?@CacheConfig 重點24.2.6?啟用緩存 24.2.7?使用自定義緩存 24.3 JCache 注解 24.3.1?JCache 注解概述 24.3.2?與 Spring 緩存注解的差異 24.4 基于 XML 的聲明式緩存 24.5 配置緩存存儲 24.5.1?基于 JDK 的緩存 24.5.2?基于 Ehcache 的緩存 24.5.3?基于 Caffeine 的緩存 24.5.4?基于 GemFire 的緩存 24.5.5?基于 JSR-107 的緩存 實戰(zhàn) 24.6 基于緩存的天氣預報系統(tǒng) 24.6.1?項目概述 24.6.2?后臺編碼實現(xiàn) 24.6.3?緩存配置 24.6.4?運行 第25章Spring Boot 25.1 從單塊架構到微服務架構 25.1.1?單塊架構的概念 重點25.1.2?單塊架構的優(yōu)缺點 難點25.1.3?將單塊架構進化為微服務架構 25.2 微服務設計原則 難點25.2.1?拆分足夠微 重點25.2.2?輕量級通信 難點25.2.3?領域驅(qū)動原則 重點25.2.4?單一職責原則 重點25.2.5?DevOps 及兩個比薩原則 重點25.2.6?不限于技術棧 重點25.2.7?可獨立部署 25.3 Spring Boot 概述 難點25.3.1?Spring Boot 產(chǎn)生的背景 重點25.3.2?Spring Boot 的目標 重點25.3.3?Spring Boot 與其他 Spring 應用的關系 重點25.3.4?Starter 實戰(zhàn)25.4 開啟**個 Spring Boot 項目 25.4.1?通過 Spring Initializr 初始化一個 Spring Boot 原型 25.4.2?用 Gradle 編譯項目 25.4.3?探索項目 第26章Spring Cloud ★新功能 26.1 Spring Cloud 概述 26.1.1?Spring Cloud 簡介 26.1.2?Spring Cloud 與 Spring Boot 的關系 ★新功能 26.2 Spring Cloud 入門配置 重點26.2.1?Maven 配置 重點26.2.2?Gradle 配置 重點26.2.3?聲明式方法 ★新功能 26.3 Spring Cloud 的子項目介紹 26.3.1?Spring Cloud 子項目的組成 重點26.3.2?Spring Cloud 組件的版本 ★新功能 實戰(zhàn) 26.4 實現(xiàn)微服務的注冊與發(fā)現(xiàn) 26.4.1?服務發(fā)現(xiàn)的意義 重點26.4.2?集成 Eureka Server 重點26.4.3?集成 Eureka Client 重點26.4.4?實現(xiàn)服務的注冊與發(fā)現(xiàn) 附錄 附錄A EJB 規(guī)范摘要 A1?EJB 2.1 規(guī)范目標 A2?EJB 3.2 規(guī)范目標 附錄B Bean Validation 內(nèi)置約束 附錄C 提升 Gradle 的構建速度 附錄D 本書所采用的技術及相關版本 參考文獻
你還可能感興趣
我要評論
|