一步一步學 Spring Boot2 : 微服務項目實戰

黃文毅

買這商品的人也買了...

商品描述

本書以項目實戰為主體,循序漸進地介紹了Spring Boot 2.0在Web應用開發方面的各項技能。第1章由零開始引導讀者快速搭建Spring Boot開發環境,對之後Spring Boot的探險之旅奠定基礎。第2章、第3章、第10章和第13章介紹Spring Boot數據訪問應用,整合眾多流行技術Spring Boot集成Druid、Spring Data JPA和MyBatis,快速訪問MySQL和Mongo DB數據庫。第4~6章重點介紹Spring Boot集成Thymeleaf模板引擎、事務使用以及攔截器和監聽器的應用。第7~9章主要介紹Spring Boot使用Redis緩存和Quartz定時器、集成Log4J日誌框架和發送Email郵件。第11、12章主要介紹Spring Boot集成ActiveMQ和異步調用、全局異常使用。第14章和第15章主要介紹Spring Boot應用監控和應用安全Security。第16章和第17章介紹Spring boot微服務在Zookeeper註冊和Dubbo的使用、多環境配置和使用以及在Tomcat上的部署應用。第18章主要探索Spring Boot背後的原理和執行流程。為幫助讀者快速掌握Spring Boot,編者還錄製了與本書內容相關的教學視頻,讀者下載後即可觀看學習。


本書適用於所有Java編程語言開發人員、Spring Boot開發愛好者以及計算機專業的學生等。
 

作者簡介

作者:黃文毅
黃文毅, CSDN博客專家,CSDN學院、網易學院和騰訊學院等網絡學院講師。曾就職於廈門星耀藍圖科技有限公司(為浦發銀行、興業銀行、南京銀行、湖南農信銀行等銀行開發系統)和上海美團(從事美團和大眾點評後端開發工作),目前就職於廈門美圖科技有限公司,從事美圖秀秀和美拍後端開發工作。

目錄大綱

第1章第一個Spring Boot項目1 
1.1 Spring Boot簡單介紹1 
1.2 Spring Boot環境準備2 
1.2.1安裝JDK 2 
1.2.2安裝IntelliJ IDEA 3 
1.2.3安裝Apache Maven 4 
1.3一分鐘快速搭建Spring Boot項目5 
1.3.1使用Spring Initializr新建項目5 
1.3.2測試8 
1.4 Spring Boot文件目錄介紹8 
1.4.1工程目錄8 
1.4.2入口類10 
1.4.3測試類10 
1.4.4 pom文件11 
1.5 Maven Helper插件的安裝和使用13 
1.5.1 Maven Helper插件介紹13 
1.5.2 Maven Helper插件的安裝13 
1.5.3 Maven Helper插件的使用13 
第2章集成MySQL數據庫15 
2.1 MySQL介紹與安裝15 
2.1.1 MySQL概述15 
2.1.2 MySQL的安裝16 
2.2集成MySQL數據庫17 
2.2.1引入依賴17 
2.2.2添加數據庫配置17
2.2.3設計表和實體18 
2.3集成測試19 
2.3.1測試用例開發19 
2.3.2測試20 
2.3.3 Navicat for MySQL客戶端安裝與使用21 
2.3.4 IntelliJ IDEA連接MySQL 22 
2.4集成Druid 23 
2.4. 1 Druid概述23 
2.4.2引入依賴23 
2.4.3 Druid配置24 
2.4.4開啟監控功能25 
2.4.5測試27 
第3章集成Spring Data JPA 28 
3.1 Spring Data JPA介紹28 
3.1.1 Spring Data JPA介紹28 
3.1.2核心接口Repository 29 
3.1.3接口繼承關係圖30 
3.2集成Spring Data JPA 31 
3.2.1引入依賴31 
3.2.2繼承JpaRepository 31 
3.2.3服務層類實現33 
3.2.4增刪改查分頁簡單實現35 
3.2.5自定義查詢方法36 
3.3集成測試38 
3.3.1測試用例開發38 
3.3.2測試40 
第4章使用Thymeleaf模板引擎41
4.1 Thymeleaf模板引擎介紹41 
4.2使用Thymeleaf模板引擎43 
4.2.1引入依賴43 
4.2.2控制層開發44 
4.2.3 Thymeleaf模板頁面開發45 
4.3集成測試46 
4.3.1測試46 
4.3.2 Rest Client工具介紹46 
4.3.3使用Rest Client測試47 
第5章Spring Boot事務支持48 
5.1 Spring事務48 
5.1.1 Spring事務介紹48 
5.1.2 Spring聲名式事務49 
5.1.3 Spring註解事務行為50 
5.2 Spring Boot事務的使用51 
5.2.1 Spring Boot事務介紹51 
5.2.2類級別事務52 
5.2.3方法級別事務52 
5.2.4測試53 
第6章使用過濾器和監聽器55 
6.1 Spring Boot使用過濾器Filter 55 
6.1.1過濾器Filter介紹55 
6.1.2過濾器Filter的使用57 
6.1.3測試59 
6.2 Spring Boot使用監聽器Listener 59 
6.2.1監聽器Listener介紹59
6.2.2監聽器Listener的使用60 
6.2.3測試61 
第7章集成Redis緩存62 
7.1 Redis緩存介紹62 
7.1.1 Redis概述62 
7.1.2 Redis服務器的安裝63 
7.1.3 Redis緩存測試65 
7.2 Spring Boot集成Redis緩存71 
7.2.1 Spring Boot緩存支持71 
7.2.2引入依賴71 
7.2.3添加緩存配置71 
7.2.4測試用例開發72 
7.2.5測試73 
7.3 Redis緩存在Spring Boot中使用74 
7.3.1監聽器Listener的開發74 
7.3.2項目啟動緩存數據76 
7.3.3更新緩存數據76 
7.3.4測試78 
第8章集成Log4j日誌80 
8.1 Log4j介紹80 
8.2集成Log4j2 82 
8.2.1引入依賴82 
8.2.2添加Log4j配置83 
8.2.3創建log4j2.xml文件84 
8.3使用Log4j記錄日誌84 
8.3.1打印到控制台84 
8.3.2記錄到文件86 
8.3.3測試88
第9章Quartz定時器和發送Email 90 
9.1使用Quartz定時器90 
9.1.1 Quartz概述90 
9.1.2引入依賴92 
9.1.3定時器配置文件93 
9.1.4創建定時器類95 
9.1.5 Spring Boot掃描配置文件97 
9.1.6測試97 
9.2 Spring Boot發送Email 98 
9.2.1 Email介紹98 
9.2.2引入依賴98 
9.2.3添加Email配置99 
9.2.4在定時器中發送郵件99 
9.2.5測試102 
第10章集成MyBatis 103 
10.1 MyBatis介紹103 
10.2集成MyBatis 104 
10.2.1引入依賴104 
10.2.2添加MyBatis配置104 
10.2.3 Dao層和Mapper文件開發104 
10.2.4測試107 
第11章異步消息與異步調用108 
11.1 JMS消息介紹108 
11.2 Spring Boot集成ActiveMQ 110 
11.2.1 ActiveMQ概述110 
11.2.2 ActiveMQ的安裝110 
11.2.3引入依賴112
11.2.4添加ActiveMQ配置112 
11.3使用ActiveMQ 112 
11.3.1創建生產者112 
11.3.2創建消費者116 
11.3.3測試117 
11.4 Spring Boot異步調用121 
11.4.1異步調用介紹121 
11.4.2 @Async的使用121 
11.4.3測試122 
第12章全局異常處理與Retry重試126 
12.1全局異常介紹126 
12.2 Spring Boot全局異常使用127 
12.2.1自定義錯誤頁面127 
12.2.2測試129 
12.2.3全局異常類開發129 
12.2.4測試132 
12.3 Retry重試機制132 
12.3.1 Retry重試介紹132 
12.3.2 Retry重試機制的使用133 
12.3.3測試135 
第13章集成MongoDB數據庫136 
13.1 MongoDB數據庫介紹136 
13.1.1 MongoDB概述136 
13.1.2 MongoDB的安裝137 
13.1.3 NoSQL Manager for MongoDB客戶端介紹138
13.1.4 NoSQL Manager for MongoDB客戶端的使用138 
13.2集成MongoDB 140 
13.2.1引入依賴140 
13.2.2添加MongoDB配置140 
13.2.3連接MongoDB 140 
13.2.4測試142 
第14章集成Spring Security 144 
14.1 Spring Security介紹144 
14.2集成Spring Security 146 
14.2.1引入依賴146 
14.2.2配置Spring Security 146 
14.2.3測試147 
14.2.4數據庫用戶授權登錄148 
14.2.5測試155 
第15章Spring Boot應用監控156 
15.1應用監控介紹156 
15.2使用應用監控157 
15.2.1引入依賴157 
15.2.2添加配置157 
15.2.3測試158 
15.2.4定制端點160 
15.3自定義端點161 
15.3.1自定義端點EndPoint 161 
15.3.2測試164 
15.3.3自定義HealthIndicator 164 
15.3.4測試166
15.4保護Actuator端點166 
第16章集成Dubbo和Zookeeper 169 
16.1 Zookeeper介紹與安裝169 
16.1.1 Zookeeper概述169 
16.1.2 Zookeeper的安裝與啟動171 
16.2 Spring Boot集成Dubbo 172 
16.2.1 Dubbo概述172 
16.2.2服務與接口拆分思路174 
16.2.3服務與接口拆分實踐174 
16.2.4正式版發布178 
16.2.5 Service服務端開發179 
16.2.6 Service服務註冊181 
16.2.7 Client客戶端開發181 
第17章多環境配置與部署183 
17.1多環境配置介紹183 
17.2多環境配置使用184 
17.2.1添加多個配置文件184 
17.2.2配置激活選項185 
17.2.3測試185 
17.3部署187 
17.3.1 Spring Boot內置Tomcat 187 
17.3 .2 IntelliJ IDEA配置Tomcat 188 
17.3.3 war包部署190 
17.3.4測試191 
第18章Spring Boot原理解析192
18.1回顧入口類192 
18.1.1 MySpringBootApplication入口類192 
18.1.2 @SpringBootApplication的原理193 
18.1.3 SpringApplication的run方法195 
18.1.4 SpringApplicationRunListeners監聽器196 
18.1.5 ApplicationContextInitializer接口197 
18.1.6 ApplicationRunner與CommandLineRunner 199 
18.2 SpringApplication執行流程199 
18.3 spring-boot-starter原理201 
參考文獻204