學習 Spring Boot 3.0 Learning Spring Boot 3.0 - Third Edition: Simplify the development of production-grade applications using Java and Spring

[美]格雷格·L.特恩奎斯特 著 劉亮 譯

  • 學習 Spring Boot 3.0-preview-1
  • 學習 Spring Boot 3.0-preview-2
  • 學習 Spring Boot 3.0-preview-3
學習 Spring Boot 3.0-preview-1

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

商品描述

《學習Spring Boot 3.0》詳細闡述了與Spring Boot 3.0相關的基本解決方案,主要包括Spring Boot的核心功能、使用Spring Boot創建Web應用程序、使用Spring Boot查詢數據、使用Spring Boot保護應用程序、使用Spring Boot進行測試、使用Spring Boot配置應用程序、使用Spring Boot發布應用程序、使用Spring Boot構建原生程序、編寫響應式Web控制器、響應式處理數據等內容。此外,本書還提供了相應的示例、代碼,以幫助讀者進一步理解相關方案的實現過程。 本書適合作為高等院校電腦及相關專業的教材和教學參考書,也可作為相關開發人員的自學用書和參考手冊。

目錄大綱

目    錄

第1篇  Spring Boot基礎知識

第1章 Spring Boot的核心功能 3

1.1  技術要求 4

1.1.1  安裝Java 17 4

1.1.2  安裝現代IDE 5

1.1.3  創建GitHub賬戶 5

1.1.4  尋找其他支持 6

1.2  自動配置Spring bean 6

1.2.1  瞭解應用程序上下文 6

1.2.2  探索Spring Boot中的自動配置策略 7

1.3  使用Spring Boot啟動器添加portfolio組件 10

1.4  使用配置屬性自定義設置 12

1.4.1  創建自定義屬性 13

1.4.2  外部化應用程序配置 14

1.4.3  配置基於屬性的Bean 16

1.5  管理應用程序依賴項 18

1.6  小結 19

第2篇  使用Spring Boot創建應用程序

第2章  使用Spring Boot創建Web應用程序 23

2.1  使用start.spring.io構建應用程序 23

2.2  創建Spring MVC Web控制器 26

2.3  使用start.spring.io擴充現有項目 28

2.4  利用模板創建內容 30

2.4.1  將演示數據添加到模板中 31

2.4.2  使用更好的設計構建我們的應用程序 33

2.4.3  通過構造函數調用註入依賴 35

2.4.4  通過HTML表單更改數據 36

2.5  創建基於JSON的API 39

2.6  將Node.js掛接到Spring Boot Web應用程序 43

2.6.1  將JavaScript與Node.js綁定在一起 45

2.6.2  創建React.js應用程序 46

2.7  小結 52

第3章  使用Spring Boot查詢數據 53

3.1  將Spring Data添加到現有的Spring Boot應用程序中 53

3.1.1  使用Spring Data輕松管理數據 54

3.1.2  將Spring Data JPA添加到項目中 56

3.2  DTO、實體和POJO 56

3.2.1  實體 57

3.2.2  DTO 58

3.2.3  POJO 59

3.3  創建Spring Data存儲庫 59

3.4  使用自定義查找器 61

3.4.1  對結果進行排序 65

3.4.2  限制查詢結果 66

3.5  使用query by example找到動態查詢的答案 67

3.6  使用自定義JPA 70

3.7  小結 73

第4章  使用Spring Boot保護應用程序 75

4.1  將Spring Security添加到項目中 76

4.2  使用自定義安全策略創建用戶 77

4.3  使用Spring Data支持的一組用戶交換硬編碼用戶 79

4.4  保護網絡路由和HTTP謂詞 82

4.4.1  Spring Boot自動配置的安全策略 83

4.4.2  表單身份驗證和基本身份驗證 83

4.4.3  創建自定義安全策略 86

4.4.4  關於跨站請求偽造的問題 87

4.5  Spring Data的安全保護方法 89

4.5.1  更新模型 89

4.5.2  取得數據的所有權 91

4.5.3  添加刪除按鈕 92

4.5.4  鎖定訪問 93

4.5.5  啟用方法級安全性 94

4.5.6  在站點上顯示用戶詳細信息 94

4.6  利用Google對用戶進行身份驗證 98

4.6.1  使用OAuth的優點 99

4.6.2  使用OAuth的缺點 99

4.6.3  創建Google OAuth 2.0應用程序 99

4.6.4  將OAuth客戶端添加到Spring Boot項目中 101

4.6.5  遠程調用OAuth2 API 104

4.6.6  創建一個OAuth2支持的Web應用程序 108

4.7  小結 115

第5章  使用Spring Boot進行測試 117

5.1  將JUnit 5添加到應用程序中 117

5.2  為域對象創建測試 119

5.3  使用MockMVC測試Web控制器 122

5.4  使用模擬測試數據存儲庫 125

5.5  使用嵌入式數據庫測試數據存儲庫 130

5.6  將Testcontainers添加到應用程序中 134

5.7  使用Testcontainers測試數據存儲庫 136

5.8  使用Spring Security Test測試安全策略 140

5.9  小結 145

第3篇  使用Spring Boot發布應用程序

第6章 使用Spring Boot配置應用程序 149

6.1  創建自定義屬性 149

6.2  創建基於配置文件的屬性文件 154

6.3  切換到YAML 157

6.4  使用環境變量設置屬性 159

6.5  屬性覆蓋的順序 160

6.6  小結 163

第7章  使用Spring Boot發布應用程序 165

7.1  創建超級JAR 165

7.2  組裝Docker容器 168

7.3  構建“正確”類型的容器 170

7.4  將應用程序發布到Docker Hub上 173

7.5  在生產環境中進行調整 175

7.6  使用Spring Boot進行擴展 176

7.7  小結 180

第8章  使用Spring Boot構建原生程序 181

8.1  關於GraalVM 181

8.2  為GraalVM改造應用程序 182

8.3  在GraalVM中運行原生Spring Boot應用程序 185

8.4  需要GraalVM的原因 189

8.5  使用GraalVM組裝Docker容器 190

8.5.1  Spring Boot 3.0與Spring Boot 2.7和Spring Native 191

8.5.2  GraalVM和其他庫 191

8.6  小結 192

第4篇  使用Spring Boot擴展應用程序

第9章  編寫響應式Web控制器 195

9.1  關於響應式編程 195

9.1.1  響應式編程簡介 196

9.1.2  Reactive Streams詳解 197

9.2  創建響應式Spring Boot應用程序 198

9.3  通過響應式GET方法提供數據 200

9.4  通過響應式POST方法使用傳入數據 201

9.4.1  使用Project Reactor擴展應用程序 202

9.4.2  Java並發編程簡史 203

9.5  提供響應式模板 204

9.5.1  創建響應式Web控制器 205

9.5.2  製作Thymeleaf模板 206

9.6  響應式創建超媒體 210

9.7  小結 216

第10章  響應式處理數據 219

10.1  響應式獲取數據的難題 219

10.2  選擇響應式數據存儲 221

10.3  創建響應式數據存儲庫 222

10.4  試用R2DBC 223

10.4.1  使用R2dbcEntityTemplate加載數據 225

10.4.2  將數據響應式地返回API控制器 226

10.4.3  響應式地處理模板中的數據 228

10.5  小結 230