全書目錄:《Spring Boot 實戰(zhàn)開發(fā) 》(陳光劍 編著)

image.png
  1. Spring Boot 簡介 15
    1.1. 從 Spring 到Spring Boot 16
    1.1.1. 從 EJB 到 Spring 16
    1.1.2. Spring 框架發(fā)展簡史 19
    1.1.3. Spring 框架的核心模塊 21
    1.1.4. Spring 新生態(tài) 28
    1.2. Spring Boot 是什么 29
    1.3. Spring Boot 框架組成 30
    1.3.1. spring-boot 31
    1.3.2. spring-boot-starters 31
    1.3.3. spring-boot-autoconfigure 31
    1.3.4. spring-boot-actuator 32
    1.3.5. spring-boot-tools 32
    1.3.6. spring-boot-cli 32
    1.4. Spring Boot 極簡特性 32
    1.5. 約定優(yōu)于配置極簡化理念 34
    1.6. Spring 5.0 新特性 36
    1.7. Spring Boot 2.0 新特性 36
    1.8. Spring Cloud 簡介 36
    1.9. 最新IntelliJ IDEA 2017.3版本特性 36
    1.10. 本章小結(jié) 36
  2. 快速開始 HelloWorld 36
    2.1. 創(chuàng)建 Spring Boot 項目 36
    2.2. Spring Boot 項目的入口類 42
    2.3. 添加 HelloWorldController 44
    2.4. Spring Boot應(yīng)用級注解 @SpringBootApplication 47
    2.4.1. Spring Boot配置類注解 @SpringBootConfiguration 48
    2.4.2. XML 配置文件 VS. JavaConfig 注解配置 49
    2.4.3. 啟用自動配置注解 @EnableAutoConfiguration 50
    2.4.4. 組件掃描注解 @ComponentScan 51
    2.4.5. 導入配置類注解 @Import 52
    2.5. 本章小結(jié) 52
  3. 深入理解Spring Boot 自動配置 53
    3.1. 傳統(tǒng) SSM 開發(fā)回顧 53
    3.1.1. 創(chuàng)建 Maven 工程 53
    3.1.2. 添加源代碼和資源目錄 58
    3.1.3. 引入項目依賴的JAR包 60
    3.1.4. 配置 Spring 上下文spring.xml 63
    3.1.5. 配置 SpringMVC 的上下文spring-mvc.xml 66
    3.1.6. DispatcherServlet在web.xml中的配置 68
    3.1.7. 完整的 web.xml 配置 68
    3.1.8. mybatis-generator配置 73
    3.1.9. 數(shù)據(jù)庫表結(jié)構(gòu) 74
    3.1.10. MapperScanner和SqlSessionFactoryBean配置 75
    3.1.11. Service 層和 Controller 層代碼 80
    3.1.12. 配置 Tomcat 服務(wù)器 84
    3.1.13. 視圖模板層代碼 87
    3.2. Spring 簡化 XML 配置的解決方案 91
    3.3. 自動配置的 Spring Boot 93
    3.3.1. 條件注解 @Conditional 93
    3.3.2. @Conditional注解使用實例 93
    3.3.3. 常見條件注解 105
    3.3.4. 組合注解 106
    3.4. Spring Boot Starters 106
    3.5. @EnableAutoConfiguration自動配置原理 108
    3.5.1. 自動配置過程 108
    3.5.2. spring.factories文件 110
    3.5.3. getCandidateConfigurations 方法 117
    3.6. FreeMarkerAutoConfiguration自動配置實例分析 118
    3.6.1. spring-boot-starter-freemarker工程 118
    3.6.2. spring-boot-autoconfigure工程 120
    3.7. Spring Boot Autoconfigure 工作原理圖 125
    3.8. 本章小結(jié) 126
  4. Spring Boot 命令行 CLI 127
    4.1. 安裝 CLI 127
    4.2. 快速開始Hello World 128
    4.3. spring命令 131
    4.4. 使用@Grab注解下載依賴 133
    4.5. beans Groovy DSL 134
    4.6. 創(chuàng)建項目命令 spring init 135
    4.7. 本章小結(jié) 138
  5. Spring Boot 集成 MyBatis數(shù)據(jù)庫層開發(fā) 138
    5.1. Java EE 的分層模型 139
    5.1.1. 模型層 141
    5.1.2. 數(shù)據(jù)訪問對象層 141
    5.1.3. 業(yè)務(wù)邏輯層 141
    5.1.4. 控制器層 141
    5.1.5. 視圖層 141
    5.2. MyBatis 簡介 141
    5.2.1. 概述 142
    5.2.2. MyBatis 框架組成 143
    5.2.3. 接口層 143
    5.2.4. 數(shù)據(jù)處理層 147
    5.2.5. 基礎(chǔ)設(shè)施層 152
    5.3. 項目實戰(zhàn) 164
    5.3.1. 使用 Spring Boot CLI 創(chuàng)建工程 164
    5.3.2. 配置application.properties 176
    5.3.3. 使用IDEA 中自帶的連接數(shù)據(jù)庫客戶端 177
    5.3.4. 使用 MyBatis Generator 生成 Dao 層代碼 178
    5.3.5. 配置MyBatis同時使用 Mapper.xml和注解 183
    5.3.6. 使用 MyBatis分頁 插件pagehelper 186
    5.3.7. 實現(xiàn)查詢接口 186
    5.3.8. 使用@Select注解 187
    5.3.9. Mybatis插件機制 190
    5.3.10. 實現(xiàn)分頁接口 192
    5.3.11. PageHelper工作原理 197
    5.3.12. 多表關(guān)聯(lián)查詢級聯(lián) 206
    5.4. 本章小結(jié) 211
  6. Spring Boot 集成 JPA數(shù)據(jù)庫層開發(fā) 212
    6.1. JPA是什么 212
    6.1.1. JPA 簡介 212
    6.1.2. JPA 整體架構(gòu) 212
    6.1.3. JPA 生態(tài) 214
    6.1.4. JPA 技術(shù)棧 217
    6.1.5. ORM 框架概述 217
    6.2. Hibernate 簡介 219
    6.2.1. Hibernate 模塊組成 219
    6.2.2. Hibernate整體架構(gòu) 219
    6.2.3. Hibernate 特性 226
    6.2.4. Hibernate 與 MyBatis 簡單對比 228
    6.3. Spring Data JPA簡介 228
    6.3.1. Spring Data 項目 229
    6.3.2. Spring Data JPA概述 232
    6.4. 項目實戰(zhàn) 232
    6.4.1. Spring Data JPA提供的接口 232
    6.4.2. 創(chuàng)建項目 233
    6.4.3. 工程導入 IDEA 235
    6.4.4. 配置數(shù)據(jù)庫 237
    6.4.5. 自動生成 Entity 實體類代碼 238
    6.4.6. 配置項目數(shù)據(jù)源信息 248
    6.4.7. 實現(xiàn)查詢接口 248
    6.4.8. 分頁查詢 253
    6.4.9. 多表級聯(lián)查詢 256
    6.4.10. 級聯(lián)類型CascadeType 259
    6.4.11. 模糊搜索接口 261
    6.4.12. JPQL語法基礎(chǔ) 263
    6.4.13. JPA常用注解 269
    6.5. 本章小結(jié) 271
  7. 開發(fā) Spring Boot Gradle插件實現(xiàn)自動化生成代碼腳手架 271
    7.1. Gradle 簡介 272
    7.1.1. Gradle 概述 272
    7.1.2. Gradle 特性 273
    7.1.3. Gradle 構(gòu)建生命周期 273
    7.1.4. Gradle 倉庫 274
    7.1.5. 約定優(yōu)于配置 275
    7.1.6. 發(fā)布 Gradle 項目生成的構(gòu)件 275
    7.1.7. Groovy 特點簡介 276
    7.2. Gradle 插件 276
    7.2.1. Gradle 插件概述 277
    7.2.2. 常用 Gradle插件 277
    7.2.3. java 插件 277
    7.2.4. application 插件 280
    7.3. 項目實戰(zhàn) 281
    7.3.1. 創(chuàng)建項目 281
    7.3.2. 添加依賴 287
    7.3.3. 配置上傳本地Maven倉庫 287
    7.3.4. 實現(xiàn) Plugin 288
    7.3.5. 添加插件屬性配置 296
    7.3.6. 運行測試 297
    7.3.7. 在項目中使用kor插件 300
    7.4. 本章小結(jié) 304
  8. Spring Boot 使用 Spring MVC 和FreeMarker開發(fā) Web 應(yīng)用 305
    8.1. Spring MVC 簡介 305
    8.1.1. Servlet 概述 305
    8.1.2. MVC 簡介 310
    8.1.3. Spring、Spring MVC 與 Spring Boot 2.0 312
    8.1.4. Spring MVC 框架 313
    8.2. Spring MVC 常用注解 317
    8.3. 使用FreeMarker模板引擎 319
    8.3.1. FreeMarker簡介 319
    8.3.2. 實現(xiàn)一個分頁查詢頁面 320
    8.4. 本章小結(jié) 330
  9. Spring Boot 自定義 SpringMVC配置 331
    9.1. 配置父類WebMvcConfigurationSupport 331
    9.2. 靜態(tài)資源處理配置類ResourceHandler 334
    9.3. 攔截器配置類HandlerInterceptor 335
    9.4. 跨域支持配置類CorsRegistry 337
    9.5. 添加視圖控制器ViewController 338
    9.6. 消息轉(zhuǎn)換器MessageConverter 338
    9.7. 數(shù)據(jù)格式化器 Formatter 340
    9.8. 視圖解析器ViewResolver配置 340
    9.9. 全局異常處理ExceptionHandler 341
    9.9.1. 使用 @ControllerAdvice + @ExceptionHandler實現(xiàn)統(tǒng)一異常處理 342
    9.9.2. 實現(xiàn) HandlerExceptionResolver 接口 344
    9.10. 定制與優(yōu)化內(nèi)置Tomcat容器 347
    9.11. 定制 Spring Boot 應(yīng)用程序啟動 Banner 351
    9.12. 本章小結(jié) 356
  10. Spring Boot注冊 Servlet、Filter 和 Listener 356
    10.1. 創(chuàng)建項目 356
    10.2. 注冊 Servlet 358
    10.3. 注冊 Filter 362
    10.4. 注冊 Listener 369
    10.5. 本章小結(jié) 370
  11. Spring Boot AOP 面向切面編程 371
    11.1. AOP 簡介 371
    11.2. AOP 核心概念 372
    11.3. Spring AOP介紹 374
    11.4. 項目實戰(zhàn):實現(xiàn)日志切面 375
    11.4.1. 創(chuàng)建項目 375
    11.4.2. 添加 aop 依賴aspectjweaver 382
    11.4.3. 切面邏輯實現(xiàn) 384
    11.4.4. @Pointcut匹配表達式 385
    11.4.5. 運行測試 386
    11.5. 本章小結(jié) 387
  12. Spring Boot 使用 AOP + Filter實現(xiàn)用戶登錄鑒權(quán)與權(quán)限控制 387
    12.1. 系統(tǒng)整體架構(gòu) 387
    12.2. 創(chuàng)建工程 389
    12.3. 數(shù)據(jù)庫表結(jié)構(gòu)設(shè)計 394
    12.4. 用戶登錄邏輯 395
    12.5. 登錄態(tài)鑒權(quán)過濾器 401
    12.5.1. 用戶鑒權(quán)邏輯 401
    12.5.2. 運行測試 404
    12.5.3. 頁面展示用戶名 406
    12.6. AOP實現(xiàn)用戶權(quán)限管理 407
    12.6.1. 功能簡介 407
    12.6.2. 實現(xiàn)權(quán)限控制 407
    12.6.3. 無權(quán)限頁面 410
    12.6.4. Pointcut切入點配置 410
    12.6.5. 運行測試 411
    12.7. 用戶注冊 412
    12.7.1. 用戶注冊界面 412
    12.7.2. 模板代碼 412
    12.7.3. 前端js代碼 413
    12.7.4. 后端注冊接口 413
    12.7.5. 數(shù)據(jù)后端校驗 414
    12.7.6. 獲取數(shù)據(jù)校驗結(jié)果 418
    12.7.7. 運行測試 419
    12.8. 本章小結(jié) 424
  13. Spring Boot 使用 Security 實現(xiàn)系統(tǒng)的安全認證與權(quán)限控制 424
    13.1. Spring Security 簡介 425
    13.1.1. Spring Security概述 425
    13.1.2. 基于Form表單登陸認證 426
    13.2. Spring Security 核心組件 427
    13.2.1. SecurityContextHolder與Security Context 427
    13.2.2. 獲取當前用戶的信息 428
    13.2.3. 認證信息類Authentication 429
    13.2.4. 認證管理器AuthenticationManager 430
    13.2.5. 基于數(shù)據(jù)庫的認證DaoAuthenticationProvider 432
    13.2.6. UserDetails與UserDetailsService 433
    13.3. 項目實戰(zhàn) 435
    13.3.1. 初階 Security: 默認認證用戶名密碼 435
    13.3.2. 中階 Security:內(nèi)存用戶名密碼認證 441
    13.3.3. 角色權(quán)限控制 445
    13.3.4. 進階 Security: 基于數(shù)據(jù)庫的用戶和角色權(quán)限 453
    13.4. 本章小結(jié) 477
  14. React.js + Spring Boot 開發(fā)前后端分離項目 477
    14.1. 前后端分離架構(gòu) 478
    14.1.1. 前端簡史 478
    14.1.2. ECMAScript的歷史 478
    14.1.3. 從后端走向前端 479
    14.1.4. 前后端分離架構(gòu) 480
    14.2. 項目實戰(zhàn) 481
    14.2.1. 系統(tǒng)功能介紹 482
    14.2.2. 實現(xiàn)登陸后端接口 483
    14.2.3. 實現(xiàn)登陸前端頁面 486
    14.2.4. 用戶登錄狀態(tài)接口 488
    14.2.5. 實現(xiàn)列表展示后端接口 490
    14.2.6. 實現(xiàn)列表展示前端頁面 491
    14.2.7. 前后端集成配置 492
    14.2.8. 前后端聯(lián)調(diào)測試 492
    14.3. 本章小結(jié) 495
  15. Spring Boot 定時任務(wù) 496
    15.1. 定時任務(wù)概述 496
    15.2. 靜態(tài)定時任務(wù) 496
    15.3. Cron 表達式 498
    15.3.1. Cron簡介 498
    15.3.2. Cron 表達式字段范圍 499
    15.3.3. Cron 表達式特殊字符 499
    15.3.4. 常用的 Cron 表達式 500
    15.4. 動態(tài)定時任務(wù) 501
    15.4.1. 實現(xiàn)SchedulingConfigurer接口 501
    15.4.2. 從數(shù)據(jù)庫中讀取 cron 表達式值 502
    15.4.3. 數(shù)據(jù)庫初始化數(shù)據(jù) 502
    15.4.4. 多線程執(zhí)行 503
    15.4.5. 添加多個任務(wù) 504
    15.5. 本章小結(jié) 505
  16. Spring Boot 集成 Web Flux 開發(fā) Reactive Web 應(yīng)用 506
    16.1. 響應(yīng)式宣言 506
    16.2. Spring 5 響應(yīng)式Web框架架構(gòu)圖 506
    16.3. 項目實戰(zhàn) 508
    16.3.1. 創(chuàng)建項目 508
    16.3.2. 項目結(jié)構(gòu) 511
    16.3.3. 領(lǐng)域?qū)嶓w層 513
    16.3.4. 服務(wù)層 514
    16.3.5. 控制器路由層 515
    16.3.6. Reactive Web服務(wù)器配置 516
    16.3.7. 項目啟動入口類 517
    16.3.8. 啟動運行 517
    16.3.9. 測試輸出 518
    16.4. 本章小結(jié) 519
  17. Spring Boot 應(yīng)用監(jiān)控:Actuator與 Admin 519
    17.1. Actuator簡介 519
    17.2. 啟用 Actuator 520
    17.3. 揭秘Endpoint端點 522
    17.3.1. /actuator獲取actuator 列表 522
    17.3.2. /beans獲取 Bean 裝配信息 524
    17.3.3. /conditions獲取自動配置條件信息 526
    17.3.4. /configprops獲取配置屬性信息 527
    17.3.5. /env系統(tǒng)運行環(huán)境信息 529
    17.3.6. /info 應(yīng)用基本信息 532
    17.3.7. /health 獲取應(yīng)用健康信息 532
    17.3.8. /loggers系統(tǒng)日志信息 533
    17.3.9. /threaddump系統(tǒng)線程轉(zhuǎn)儲信息 534
    17.3.10. /metrics系統(tǒng)度量指標列表 536
    17.3.11. /scheduledtasks系統(tǒng)定時任務(wù)信息 537
    17.3.12. /trace系統(tǒng)請求跟蹤 538
    17.3.13. /mappings系統(tǒng)請求 URL 映射信息 539
    17.3.14. 啟用和禁用端點 541
    17.4. 自定義Actuator Endpoint 543
    17.4.1. Endpoint接口簡介 543
    17.4.2. 實現(xiàn)Endpoint接口 547
    17.4.3. 繼承AbstractEndpoint抽象類 549
    17.4.4. 實現(xiàn)健康指標接口HealthIndicator 554
    17.4.5. 實現(xiàn)度量指標接口PublicMetrics 555
    17.4.6. SystemPublicMetrics成員方法簡介 556
    17.4.7. 使用 AOP 實現(xiàn)CounterService、GaugeService接口統(tǒng)計方法執(zhí)行數(shù)據(jù) 559
    17.5. 使用Spring Boot Admin可視化 Actuator 監(jiān)控數(shù)據(jù) 564
    17.5.1. Spring Boot Admin簡介 564
    17.5.2. 工作原理簡介 568
    17.5.3. 創(chuàng)建Spring Boot Admin Server 項目 569
    17.5.4. 在 Client 端的 Spring Boot項目中配置使用Admin Server 571
    17.6. 本章小結(jié) 579
  18. Spring Boot 應(yīng)用的測試 580
    18.1. 項目準備工作 580
    18.1.1. 創(chuàng)建項目 580
    18.1.2. 導入項目到 IDEA 581
    18.1.3. 設(shè)計項目目錄結(jié)構(gòu) 581
    18.2. 項目配置 582
    18.2.1. Gradle構(gòu)建配置文件 582
    18.2.2. 項目屬性文件配置 584
    18.3. 項目代碼開發(fā) 584
    18.3.1. Entity 層代碼 584
    18.3.2. Dao 層代碼 585
    18.3.3. Service 層代碼 585
    18.3.4. Controller 層代碼 586
    18.4. 項目分層測試 586
    18.4.1. 測試代碼目錄結(jié)構(gòu) 587
    18.4.2. Dao 層測試 588
    18.4.3. Service 層測試 589
    18.4.4. 使用 Mockito 測試 Service 層代碼 590
    18.4.5. Controller 層測試 592
    18.4.6. JSON接口數(shù)據(jù)的測試斷言 596
    18.5. 本章小結(jié) 600
  19. 使用 Docker 構(gòu)建部署運行 Spring Boot 應(yīng)用 600
    19.1. 創(chuàng)建測試項目 600
    19.2. 項目打包成可執(zhí)行 jar 603
    19.3. 定制配置文件啟動應(yīng)用 606
    19.4. 項目打包成 war 包 608
    19.5. 生產(chǎn)運維 610
    19.5.1. 查看JVM參數(shù)的值 610
    19.5.2. 應(yīng)用重啟 611
    19.6. 使用 Docker 構(gòu)建部署運行Spring Boot應(yīng)用 611
    19.6.1. Docker 簡介 611
    19.6.2. 環(huán)境搭建 613
    19.7. Spring Boot 項目 Docker化實戰(zhàn) 617
    19.7.1. 添加 docker 構(gòu)建插件 618
    19.7.2. 配置 Dockerfile 文件創(chuàng)建自定義的鏡像 618
    19.7.3. Dockerfile配置說明 620
    19.7.4. 構(gòu)建自定義的應(yīng)用 Docker鏡像 623
    19.7.5. 啟動 Docker 應(yīng)用鏡像運行 623
    19.7.6. 端口映射 624
    19.7.7. 運行測試 626
    19.8. 本章小結(jié) 627
  20. 附錄 I : Spring 5.0 新特性 628
  21. 附錄 II : Spring Boot 2.0 新特性 641
    21.1.1. Kotlin 特性支持 641
    21.1.2. Spring Boot 2.0.0 M1 Release Notes 642
    21.1.3. Spring Boot 2.0.0 M2 Release Notes 648
    21.1.4. Spring Boot 2.0.0 M3 Release Notes 651
    21.1.5. Spring Boot 2.0.0 M4 Release Notes 652
    21.1.6. Spring Boot 2.0.0 M5 Release Notes 655
    21.1.7. Spring Boot 2.0.0 M6 Release Notes 657
    21.1.8. Spring Boot 2.0.0 M7 Release Notes 660
  22. 附錄 III: Spring Cloud 簡介 664
  23. 附錄 IV:最新IntelliJ IDEA 2017.3版本特性 666
  24. 附錄 V:Spring Boot CLI 的 spring init 命令行支持項 667

新書上架:《Spring Boot 開發(fā)實戰(zhàn)》

— 基于 Kotlin + Gradle + Spring Boot 2.0 的企業(yè)級服務(wù)端開發(fā)實戰(zhàn)

京東下單鏈接

https://item.jd.com/31178320122.html

天貓下單鏈接

https://detail.tmall.com/item.htm?id=574928877711

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容