買這商品的人也買了...
-
$680$537 -
$454JavaEE 開發的顛覆者: Spring Boot實戰
-
$419$398 -
$454Jenkins 權威指南
-
$301深入實踐 Spring Boot
-
$454實戰 Gradle (Gradle in Action)
-
$580$458 -
$403Tomcat 架構解析
-
$607Kubernetes 權威指南 : 從 Docker 到 Kubernetes 實踐全接觸 (紀念版)
-
$520$411 -
$500$390 -
$699$629 -
$352京東系統質量保障技術實戰
-
$352Java 微服務實戰
-
$296瘋狂 Spring Cloud 微服務架構實戰
-
$403Spring MVC + MyBatis 開發從入門到項目實戰
-
$505Nginx Lua開發實戰
-
$580$458 -
$179微服務架構基礎 (Spring Boot+Spring Cloud+Docker)
-
$600$474 -
$580$452 -
$500Spring Boot 企業級應用開發實戰
-
$297深入淺出 Spring Boot 2.x
-
$454Spring Boot 開發實戰
-
$621Spring Boot 實戰派
相關主題
商品描述
Spring Boot是目前Spring技術體系中炙手可熱的框架之一,既可用於構建業務復雜的企業應用系統,也可以開發高性能和高吞吐量的因特網應用。Spring Boot框架降低了Spring技術體系的使用門檻,簡化了Spring應用的搭建和開發過程,提供了流行的第三方開源技術的自動集成。本書系統介紹了Spring Boot 2的主要技術,側重於兩個方面,一方面是極速開發一個Web應用系統,詳細介紹Spring Boot框架、Spring MVC、視圖技術、數據庫訪問技術,並且介紹多環境部署、自動裝配、單元測試等高級特性;另一方面,當系統模塊增加,性能和吞吐量要求增加時,如何平滑地用Spring Boot實現分佈式架構,也會在本書後半部分介紹,包括使用Spring實現RESTful架構,在Spring Boot框架下使用Redis、MongoDB、ZooKeeper、Elasticsearch等流行技術,使用Spring Session實現系統水平擴展,使用Spring Cache提高系統性能。
作者簡介
李家智,出生在貴州,畢業於成都西南民族大學。現在就職於東方金科公司,擔任架構師,負責公司技術產品研發。
從事軟件開發近20年,致力於Java和Java EE系統的架構和實現,對一切技術充滿好奇,以知行合一要求自己。
除了本書,也是國內流行開源Beetl模板語言和Dao工具BeetlSQL的作者。
目錄大綱
第1章JavaEE簡介
1.1 JavaEE
1.1.1 JavaEE架構
1.1.2 JavaEE的缺點
1.2 Spring
1.2.1 SpringIoC容器和AOP
1.2.2 Spring的缺點
1.3 SpringBoot
1.4 Hello,SpringBoot
1.4.1創建一個Maven工程
1.4.2增加Web支持
1.4.3 HelloSpringBoot示例
1.4.4使用熱部署
1.4.5添加REST支持
第2章SpringBoot基礎
2.1檢查Java環境與安裝Java
2.2安裝和配置Maven
2.2.1 Maven介紹
2.2.2安裝Maven
2.2.3設置Maven
2.2.4使用IDE設置Maven
2.2.5 Maven的常用命令
2.3 Spring核心技術
2.3.1 Spring的歷史
2.3.2 Spring容器介紹
2.3.3 SpringAOP介紹
第3章MVC框架
3.1集成MVC框架
3.1.1引入依賴
3.1.2 Web應用目錄結構
3.1.3 Java包名結構
3.2使用Controller
3.3 URL映射到方法
3.3.1 @RequestMapping
3.3.2 URL路徑匹配
3.3.3 HTTPmethod匹配
3.3.4 consumes和produces
3.3.5 params和header匹配
3.4方法參數
3.4.1 PathVariable
3.4.2 Model&ModelAndView
3.4.3 JavaBean接受HTTP參數
3.4.4 @RequsetBody接受JSON
3.4.5 MultipartFile
3.4.6 @ModelAttribute
3.4.7 @InitBinder
3.5驗證框架
3.5.1 JSR—303
3.5 .2 MVC中使用@Validated
3.5.3自定義校驗
3.6 WebMvcConfigurer
3.6.1攔截器
3.6.2跨域訪問
3.6.3格式化
3.6.4註冊Controller
3.7視圖技術
3.7.1使用Freemarker
3.7.2使用Beetl
3.7.3使用Jackson
3.7.4 Redirect和Forward
3.8通用錯誤處理
3.9 @Service和@Transactional
3.9.1聲明一個Service類
3.9.2事務管理
3.10 curl命令
第4章視圖技術
4.1 Beetl模板引擎
4.1.1安裝Beetl
4.1.2設置定界符號和占位符
4.1.3配置Beetl
4.1.4 groupTemplate
4.2使用變量
4.2.1全局變量
4.2.2局部變量
4.2.3共享變量
4.2.4模板變量
4.3表達式
4.3.1計算表達式
4.3.2邏輯表達式
4.4控制語句
4.4.1循環語句
4.4.2條件語句
4.4.3 trycatch
4.5函數調用
4.6格式化函數
4.7直接調用Java
4.8標籤函數
4.9 HTML標籤
4.10安全輸出
4.11高級功能
4.11. 1配置Beetl
4.11.2自定義函數
4.11.3自定義格式化函數
4.11.4自定義標籤函數
4.11.5自定義HTML標籤
4.11.6佈局
4.11.7 AJAX局部渲染
4.12腳本引擎
4.13 JSON技術
4.13.1在SpringBoot中使用Jackson
4.13.2自定義ObjectMapper
4.13.3 Jackson的三種使用方式
4.13.4 Jackson樹遍歷
4.13.5對象綁定
4.13.6流式操作
4.13.7 Jackson註解
4.13.8集合的反序列化
4.14 MVC分離開發
4.14.1集成WebSimulate
4.14.2模擬JSON響應
4.14.3模擬模板渲染
第5章數據庫訪問
5.1配置數據源
5.2 SpringJDBCTemplate
5.2.1查詢
5.2.2修改
5.2.3 JdbcTemplate增強
5.3 BeetlSQL介紹
5.3.1 BeetlSQL功能概覽
5.3.2添加Maven依賴
5.3.3配置BeetlSQL
5.3.4 SQLManager
5.3.5使用SQL文件
5.3.6 Mapper
5.3.7使用實體
5.4 SQLManager內置CRUD
5.4.1內置的插入API
5.4.2內置的更新(刪除)API
5.4.3內置的查詢API
5.4.4代碼生成方法
5.5使用sqlId
5.5.1 md文件命名
5.5.2 md文件構成
5.5.3調用sqlId
5.5.4翻頁查詢
5.5.5 TailBean
5.5.6 ORM查詢
5.5.7其他API
5.5.8 Mapper詳解
5.6 BeetlSQL的其他功能
5.6.1常用函數和標籤
5.6.2主鍵設置
5.6.3 BeetlSQL註解
5.6.4 NameConversion
5.6.5鎖
第6章SpringDataJPA
6.1集成SpringDataJPA
6.1.1集成數據源
6.1.2配置JPA支持
6.1.3創建Entity
6.1.4簡化Entity
6.2 Repository
6.2 .1 CrudRepository
6.2.2 PagingAndSortingRepository
6.2.3 JpaRepository
6.2.4持久化Entity
6.2.5 Sort
6.2.6 Pageable和Page
6.2.7基於方法名字查詢
6.2.8 @Query查詢
6.2.9使用JPAQuery
6.2.10 Example查詢
第7章SpringBoot配置
7.1配置SpringBoot
7.1.1服務器配置
7.1.2使用其他Web服務器
7.1.3配置啟動信息
7.1.4配置瀏覽器顯示ico
7.2日誌配置
7.3讀取應用配置
7.3.1 Environment
7.3.2 @Value
7.3.3 @ConfigurationProperties
7.4 SpringBoot自動裝配
7.4.1 @Configuration和@Bean
7.4.2 Bean條件裝配
7.4.3 Class條件裝配
7.4.4 Environment裝配
7.4.5其他條件裝配
7.4.6聯合多個條件
7.4.7 Condition接口
7.4.8製作Starter
第8章部署SpringBoot應用
8.1以jar文件運行
8.2以war方式部署
8.3多環境部署
8.4 @Profile註解
第9章Testing單元測試
9.1 JUnit介紹
9.1.1 JUnit的相關概念
9.1.2 JUnit測試
9.1.3 Assert
9.1.4 Suite
9.2 SpringBoot單元測試
9.2.1測試範圍依賴
9.2.2 SpringBoot測試腳手架
9.2.3測試Service
9.2.4測試MVC
9.2.5完成MVC請求模擬
9.2.6比較MVC的返回結果
9.2.7 JSON比較
9.3 Mockito
9.3.1模擬對象
9.3.2模擬方法參數
9.3.3模擬方法返回值
9.4面向數據庫應用的單元測試
9.4.1 @Sql
9.4.2 XLSUnit
9.4.3 XLSUnit的基本用法
第10章REST
10.1 REST簡介
10.1.1 REST風格的架構
10.1.2使用“ api”作為上下文
10.1.3增加一個版本標識
10.1.4標識資源
10.1.5確定HTTPMethod
10.1.6確定HTTPStatus
10.1.7 RESTVS.WebService
10.2 SpringBoot集成REST
10.2.1集成REST
10.2.2 @RestController
10.2.3 RESTClient
10.3 SwaggerUI
10.3.1集成Swagger
10.3.2 Swagger規範
10.3.3接口描述
10.3.4查詢參數描述
10.3.5 URI中的參數
10.3.6 HTTP頭參數
10.3.7表單參數
10.3.8文件上傳參數
10.3.9整個請求體作為參數
10.4模擬REST服務
第11章MongoDB
11.1安裝MongoDB
11.2使用shell
11.2. 1指定數據庫
11.2.2插入文檔
11.2.3查詢文檔
11.2.4更新操作
11.2.5刪除操作
11.3 SpringBoot集成MongoDB
11.4增刪改查
11.4.1增加API
11.4.2根據主鍵查詢API
11.4.3查詢API
11.4. 4修改API
11.4.5刪除API
11.4.6使用MongoDatabase
11.4.7打印日誌
第12章Redis
12.1安裝Redis
12.2使用redis—cli
12.2.1安全設置
12.2.2基本操作
12.2.3 keys
12.2.4 RedisList
12.2.5 RedisHash
12.2 .6 Set
12.2.7 Pub/Sub
12.3 SpringBoot集成Redis
12.4使用StringRedisTemplate
12.4.1 opsFor
12.4.2綁定Key的操作
12.4.3 RedisConnection
12.4.4 Pub/Sub
12.5序列化策略
12.5.1默認序列化策略
12.5 .2自定義序列化策略
第13章Elasticsearch
13.1 Elasticsearch介紹
13.1.1安裝Elasticsearch
13.1.2 Elasticsearch的基本概念
13.2使用REST訪問Elasticsearch
13.2.1添加文檔
13.2.2根據主鍵查詢
13.2.3根據主鍵更新
13.2.4根據主鍵刪除
13.2.5搜索文檔
13.2.6聯合多個索引搜索
13.3使用RestTemplate訪問ES
13.3.1創建Book
13.3.2使用RestTemplate獲取搜索結果
13.4 SpringDataElastic
13.4.1安裝SpringData
13.4.2編寫Entity
13.4.3編寫Dao
13.4.4編寫Controller
第14章Cache
14.1關於Cache
14.1.1 Cache的組件和概念
14.1.2 Cache的單體應用
14.1.3使用專有的Cache服務器
14.1.4使用一二級緩存服務器
14.2 SpringBootCache
14.3註釋驅動緩存
14.3.1 @Cacheable
14.3.2 Key生成器
14.3.3 @CachePut
14.3.4 @CacheEvict
14.3.5 @Caching
14.3.6 @CacheConfig
14.4使用RedisCache
14.4.1集成Redis緩存
14.4.2禁止緩存
14.4.3定制緩存
14.5 Redis緩存原理
14.6實現Redis兩級緩存
14.6.1實現TwoLevelCacheManager
14.6.2創建RedisAndLocalCache
14.6.3緩存同步說明
14.6.4將代碼組合在一起
第15章SpringSession
15.1水平擴展實現
15.2 Nginx的安裝和配置
15.2.1安裝Nginx
15.2.2配置Nginx
15.3 SpringSession
15.3.1 SpringSession介紹
15.3.2使用Redis
15.3.3 Nginx+Redis
第16章SpringBoot和ZooKeeper
16.1 ZooKeeper
16.1.1 ZooKeeper的數據結構
16.1.2安裝ZooKeeper
16.1.3 ZooKeeper的基本命令
16.1.4領導選取演示
16.1.5分佈式鎖演示
16.1.6服務註冊演示
16.2 SpringBoot集成ZooKeeper
16.2.1集成Curator
16.2.2 CuratorAPI
16.3實現分佈式鎖
16.4服務註冊
16.4.1通過ServiceDiscovery註冊服務
16.4.2獲取服務
16.5領導選取
第17章監控SpringBoot應用
17.1安裝Acutator
17.2 HTTP跟踪
17.3日誌查看
17.4線程棧信息
17.5內存信息
17.6查看URL映射
17.7查看Spring容器管理的Bean
17.8其他監控
17.9編寫自己的監控信息
17.9.1編寫HealthIndicator
17.9.2自定義監控