《極速開發 Java大型系統:Spring Boot又輕又快又好學》是2020年深智數位股份有限公司出版的圖書,作者是龍中華。
基本介紹
- 中文名:極速開發 Java大型系統:Spring Boot又輕又快又好學
- 作者:龍中華
- 語言:繁體中文
- 出版時間:2020年12月21日
- 出版社:深智數位股份有限公司
- 頁數:560 頁
- ISBN:9789865501648
- 定價:204.68 元
內容簡介,圖書目錄,作者簡介,
內容簡介
本書通過58 個以知識為基礎的實例+ 2 個綜合性的項目,全面深入地說明Spring Boot 的主要技術原理和套用。
第1章:除說明Sping、Spring Boot和Spring Cloud之間的關係,還告訴我們在開發過程中如何學習、發現和解決問題辯戀台,這在很多書中不曾有過。
第2、3章:說明Java環境的架設,以辯囑照坑及開發工具的使用。對初學者來說,第3章值得細心體會,可以作為入門開發工具的教學來研讀,讀者可以按照書中所示範的步驟進行實際操作。
第4 ∼ 6章:這3章為本書的基礎篇,對入門讀者特別適用。第4章說明Spring Boot的專案架設,如何使用Spring Boot注釋進行開發,讀者可以跟著實例進行實際操作,體會注釋式程式設計與設定檔的結合使用。第5章詳細說明Spring Boot的MVC模式以及原理,同時透過實例說明Thymeleaf範本引擎,讀者可輕鬆上手。第6章讓讀者深入地了解回響式程式設計WebFlux的開發過程,以及如何連線操作MongoDB資料庫。
第7 ∼ 13章:在理論說明部分讓讀者明白工作中需要的技術重點,再以實例讓深入學習,真真切切地將基礎知識和實操技能套用到工作中。第7章剖析Spring的兩個重要特性:AOP和IoC;第8章說明如何洪屑希使用ORM,以及其原理;第9章說明介面的請求方法,以及介面的定義標準風格;第10章說明Spring Security;第11章說明Redis以及其工作原理和使用;第12章說明近年來使用非常廣泛的訊息中介軟體RabbitMQ;第13章說明如何透過NoSQL資料庫去實現滲危府企Elasticsearch和Solr兩大搜尋架構效果,同時對搜尋引擎做詳細的說明,並透過實例實現資料的增加、刪除、修改、查詢操作。作者把他多年的工作經驗和工作中必須掌握的知故戲辣識透過理論與實作相結合的方式,讓讀者可以在短簽海時間內從一個技術「菜鳥」成長為技術「達人」。
第14、15章:作者精心準備兩個專案實例。這兩章的知識也是在找工作時面試官常會問的問題。例如,做過幾個專案?都會什麼技術?讀者可以透過這兩章了解實際的專案並將前面的內容融會貫通。
適合讀者群 對Spring Boot有興趣的開發、測試、專案管理者,或剛入門的新手。
圖書目錄
推薦序
前言
[第一篇] 入門篇
01進入Spring Boot世界
1.1 認識Spring Boot
1.2 學習Spring Boot 的建議
02準備開發環境
2.1 架設環境
2.2 熟悉Maven
03使用開發工具
3.1 安裝開發工具IDEA 及外掛程式
3.2 實例1:用Spring Boot 輸出"HelloWorld"
3.3 在Eclipse 中開發Spring Boot套用程式
3.4 了解Spring 官方開發工具STS
3.5 必會的IDEA 實用技能
3.6 比較IDEA 與Eclipse
3.7 如何使用本書原始程式碼
[第二篇] 基礎篇
04 Spring Boot基礎
4.1 了解Spring Boot
4.2 Spring Boot 的常用注釋
4.3 使用設定檔
4.4 Spring Boot 的Starter
05分層開發Web套用程式
5.1 套用程式分層開發模式—MVC
5.2 使用視圖技術Thymeleaf
5.3 使用控制器
5.4 了解模型
5.5 實例7:實現MVC 模式的Web套用程式
5.6 驗證資料
06回響式程式設計
6.1 認識回響式程式設計
6.2 實例9:用注釋式開發實現Hello World
6.3 實例10:用注釋式開發實現資料的增加、刪除、修改和查詢
6.4 實例11:用回響式開發方式開發WebFlux
6.5 實例12:用WebFlux 模式操作悼棕希MongoDB 資料庫,實現資料的
增加、刪除、修改和查詢功能
[第三篇] 進階篇
07 Spring Boot進階
7.1 剖面導向程式設計
7.2 認識IoC 容器和Servlet 容器
7.3 篩檢程式與監聽器
7.4 自動設定
7.5 元注釋
7.6 例外處理
7.7 單元測試
08用ORM操作SQL資料庫
8.1 認識Java 的資料庫連線範本JDBCTemplate
8.2 JPA—Java 持久層API
8.3 認識JPA 的介面
8.4 JPA 的查詢方式
8.5 實例27:用JPA 開發文章管理模組
8.6 實現自動填充欄位
8.7 掌握關係對映開發
8.8 認識MyBatis—Java 資料持久層架構
8.9 實例31:用MyBatis 實現資料的增加、刪除、修改、查詢和分頁
8.10 比較JPA 與MyBatis
09介面架構風格-- RESTful
9.1 REST—前後台間的通訊方式
9.2 設計統一的RESTful 風格的資料介面
9.3 實例32:為手機APP、PC、H5網頁提供統一風格的API
9.4 實例33:用Swagger 實現介面檔案
9.5 用RestTemplate 發起請求
10整合安全架構,實現安全認證和授權
10.1 Spring Security—Spring 的安全架構
10.2 設定Spring Security
10.3 實例36:用Spring Security 實現後台登入及許可權認證功能
10.4 許可權控制方式
10.5 認識JWT
10.6 實例39:用JWT 技術為Spring Boot的API 增加認證和授權保護
10.7 Shiro—Apache 通用安全架構
10.8 實例40:用Shiro 實現管理後台的動態許可權功能
10.9 比較Spring Security 與Shiro
11整合Redis,實現高平行處理
11.1 認識Spring Cache
11.2 認識Redis
11.3 Redis 的資料類型
11.4 用RedisTemplate 操作Redis的5 種資料類型
11.5 實例47:用Redis 和MyBatis 完成快取資料的增加、刪除、修改、查詢功能
11.6 實例48:用Redis 和JPA 實現快取文章和點擊量
11.7 實例49:實現分散式Session
12整合RabbitMQ,實現系統間的資料交換
12.1 認識RabbitMQ
12.2 RabbitMQ 的基本概念
12.3 RabbitMQ 的6 種工作模式
12.4 認識AmqpTemplate 介面
12.5 在Spring Boot 中整合RabbitMQ
12.6 在Spring Boot 中實現RabbitMQ的4 種傳送/ 接收模式
12.7 實例54:實現訊息佇列延遲功能
13整合NoSQL資料庫,實現搜尋引擎
13.1 Elasticsearch—搜尋套用伺服器
13.2 實例55:用ELK 管理Spring Boot套用程式的記錄檔
13.3 實例56:在Spring Boot 中整合Elasticsearch,實現增加、刪除、修改、查詢檔案的功能
13.4 Elasticsearch 查詢
13.5 實例57:實現產品搜尋引擎
13.6 Solr—搜尋套用伺服器
13.7 實例58:在Sping Boot 中整合Solr,實現資料的增加、刪除、修改和查詢
13.8 比較Elasticsearch 和Solr
[第四篇] 專案實戰篇
14開發企業級通用的後台系統
14.1 用JPA 實現實體間的對映關係
14.2 用Spring Security 實現動態授權(RBAC)功能
14.3 監控Spring Boot 套用
15實現一個類似「京東」的電子商務商場
15.1 用Spring Security 實現會員系統
15.2 整合會員系統(Web、APP 多端、多方式註冊登入)和後台系統
15.3 實現購物系統
15.4 用Redis 實現分散式秒殺系統
15.5 用RabbitMQ 實現訂單過期取消功能
15.6 實現結算和支付功能
作者簡介
龍中華
12年來一直在某一線網際網路公司擔任資深系統分析師。目前帶領3個研發團隊,承擔系統分析、設計、實施、演進、技術團隊管理和各部門的培訓等職責。
專注於某領域的領域驅動設計(DDD)和命令查詢職責分離(CQRS)。以工程思維、領域思維等全面理解業務需求;設計和實施系統的解決方案;保證系統質量、可擴展性、自動化部署、持續演進性以及運維一體化(DevOps)。有獨到的團隊建設和管理經驗。對網際網路多種技術特點和發展趨勢有較深入研究。對多種技術如Spring Boot、Spring Cloud和Service Mesh有深入的研究和實戰經驗。
3.3 在Eclipse 中開發Spring Boot套用程式
3.4 了解Spring 官方開發工具STS
3.5 必會的IDEA 實用技能
3.6 比較IDEA 與Eclipse
3.7 如何使用本書原始程式碼
[第二篇] 基礎篇
04 Spring Boot基礎
4.1 了解Spring Boot
4.2 Spring Boot 的常用注釋
4.3 使用設定檔
4.4 Spring Boot 的Starter
05分層開發Web套用程式
5.1 套用程式分層開發模式—MVC
5.2 使用視圖技術Thymeleaf
5.3 使用控制器
5.4 了解模型
5.5 實例7:實現MVC 模式的Web套用程式
5.6 驗證資料
06回響式程式設計
6.1 認識回響式程式設計
6.2 實例9:用注釋式開發實現Hello World
6.3 實例10:用注釋式開發實現資料的增加、刪除、修改和查詢
6.4 實例11:用回響式開發方式開發WebFlux
6.5 實例12:用WebFlux 模式操作MongoDB 資料庫,實現資料的
增加、刪除、修改和查詢功能
[第三篇] 進階篇
07 Spring Boot進階
7.1 剖面導向程式設計
7.2 認識IoC 容器和Servlet 容器
7.3 篩檢程式與監聽器
7.4 自動設定
7.5 元注釋
7.6 例外處理
7.7 單元測試
08用ORM操作SQL資料庫
8.1 認識Java 的資料庫連線範本JDBCTemplate
8.2 JPA—Java 持久層API
8.3 認識JPA 的介面
8.4 JPA 的查詢方式
8.5 實例27:用JPA 開發文章管理模組
8.6 實現自動填充欄位
8.7 掌握關係對映開發
8.8 認識MyBatis—Java 資料持久層架構
8.9 實例31:用MyBatis 實現資料的增加、刪除、修改、查詢和分頁
8.10 比較JPA 與MyBatis
09介面架構風格-- RESTful
9.1 REST—前後台間的通訊方式
9.2 設計統一的RESTful 風格的資料介面
9.3 實例32:為手機APP、PC、H5網頁提供統一風格的API
9.4 實例33:用Swagger 實現介面檔案
9.5 用RestTemplate 發起請求
10整合安全架構,實現安全認證和授權
10.1 Spring Security—Spring 的安全架構
10.2 設定Spring Security
10.3 實例36:用Spring Security 實現後台登入及許可權認證功能
10.4 許可權控制方式
10.5 認識JWT
10.6 實例39:用JWT 技術為Spring Boot的API 增加認證和授權保護
10.7 Shiro—Apache 通用安全架構
10.8 實例40:用Shiro 實現管理後台的動態許可權功能
10.9 比較Spring Security 與Shiro
11整合Redis,實現高平行處理
11.1 認識Spring Cache
11.2 認識Redis
11.3 Redis 的資料類型
11.4 用RedisTemplate 操作Redis的5 種資料類型
11.5 實例47:用Redis 和MyBatis 完成快取資料的增加、刪除、修改、查詢功能
11.6 實例48:用Redis 和JPA 實現快取文章和點擊量
11.7 實例49:實現分散式Session
12整合RabbitMQ,實現系統間的資料交換
12.1 認識RabbitMQ
12.2 RabbitMQ 的基本概念
12.3 RabbitMQ 的6 種工作模式
12.4 認識AmqpTemplate 介面
12.5 在Spring Boot 中整合RabbitMQ
12.6 在Spring Boot 中實現RabbitMQ的4 種傳送/ 接收模式
12.7 實例54:實現訊息佇列延遲功能
13整合NoSQL資料庫,實現搜尋引擎
13.1 Elasticsearch—搜尋套用伺服器
13.2 實例55:用ELK 管理Spring Boot套用程式的記錄檔
13.3 實例56:在Spring Boot 中整合Elasticsearch,實現增加、刪除、修改、查詢檔案的功能
13.4 Elasticsearch 查詢
13.5 實例57:實現產品搜尋引擎
13.6 Solr—搜尋套用伺服器
13.7 實例58:在Sping Boot 中整合Solr,實現資料的增加、刪除、修改和查詢
13.8 比較Elasticsearch 和Solr
[第四篇] 專案實戰篇
14開發企業級通用的後台系統
14.1 用JPA 實現實體間的對映關係
14.2 用Spring Security 實現動態授權(RBAC)功能
14.3 監控Spring Boot 套用
15實現一個類似「京東」的電子商務商場
15.1 用Spring Security 實現會員系統
15.2 整合會員系統(Web、APP 多端、多方式註冊登入)和後台系統
15.3 實現購物系統
15.4 用Redis 實現分散式秒殺系統
15.5 用RabbitMQ 實現訂單過期取消功能
15.6 實現結算和支付功能
作者簡介
龍中華
12年來一直在某一線網際網路公司擔任資深系統分析師。目前帶領3個研發團隊,承擔系統分析、設計、實施、演進、技術團隊管理和各部門的培訓等職責。
專注於某領域的領域驅動設計(DDD)和命令查詢職責分離(CQRS)。以工程思維、領域思維等全面理解業務需求;設計和實施系統的解決方案;保證系統質量、可擴展性、自動化部署、持續演進性以及運維一體化(DevOps)。有獨到的團隊建設和管理經驗。對網際網路多種技術特點和發展趨勢有較深入研究。對多種技術如Spring Boot、Spring Cloud和Service Mesh有深入的研究和實戰經驗。