精通 Spring MVC 4 (Mastering Spring MVC 4) 精通Spring MVC 4

瓦林 (Geoffroy Warin)

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

商品描述

Spring MVC屬於SpringFrameWork的後續產品,已經融合在Spring Web Flow裡面。Spring 框架提供了構建 Web 應用程序的全功能 MVC 模塊。Spring MVC4是當前zuixin的版本,在眾多特性上有了進一步的提升。
在精通Spring MVC4中,我們將會從頭開始構建一個有用的Web應用。本書共計10章,分別介紹了快速搭建Spring Web應用、精通MVC結構、URL映射、文件上傳與錯誤處理、創建Restful應用、保護應用、單元測試與驗收測試、優化請求、將Web應用部署到雲等內容,循序漸進地講解了Spring MVC4的開發技巧。
精通Spring MVC4zui適合已經熟悉Spring編程基礎知識並迫切希望擴展其Web技能的開發人員。通過閱讀本書,讀者將深度把握Spring MVC的各項特性及實用技巧。

目錄大綱

第1章快速搭建Spring Web應用1 
1.1 Spring Tool Suite簡介2 
1.2 IntelliJ簡介7 
1.3 start.Spring.io簡介8 
1.4命令行方式簡介8 
1.5那就正式開始吧9 
1.5.1 Gradle構建11 
1.5.2讓我們看一下代碼15 
1.6幕後的Spring Boot 17 
1.6.1分發器和multipart配置17 
1.6.2視圖解析器、靜態資源以及區域配置22 
1.7錯誤與轉碼配置24 
1.8嵌入式Servlet容器(Tomcat)的配置27 
1.8.1 HTTP端口29 
1.8.2 SSL配置29 
1.8.3其他配置29 
1.9小結30 


第2章精通MVC架構32 
2.1 MVC架構32 
2.2對MVC的質疑及其最佳實踐33 
2.2.1貧血的領域模型33 
2.2.2從源碼中學習35 
2.3 Spring MVC 1-0-1 35 
2.4使用Thymeleaf 36 
2.5 Spring MVC架構40 
2.5.1 DispatcherServlet 40 
2.5.2將數據傳遞到給視圖41 
2.6 Spring表達式語言42 
2.7結束Hello World,開始獲取Tweet 44 
2.7.1註冊應用44 
2.7.2搭建Spring Social Twitter 46 
2.7.3訪問Twitter 46 
2.8 Java 8的流和lambda表達式48 
2.9使用WebJars實現質感設計49 
2.9. 1使用佈局52 
2.9.2導航54 
2.10檢查點59 
2.11小節59 


第3章處理表單和復雜的URL映射60 
3.1基本信息頁——表單60 
3.2校驗68 
3.2.1自定義校驗信息70 
3.2. 2用於校驗的自定義註解73 
3.3國際化74 
3.3.1修改地域76 
3.3.2翻譯應用的文本79 
3.3.3表單中的列表81 
3.4客戶端校驗84 
3.5檢查點86 
3.6小結87 


第4章文件上傳與錯誤處理88 
4.1上傳文件88 
4.1.1將圖片寫入到響應中93 
4.1.2管理上傳屬性94 
4.1.3展現上傳的圖片97 
4.1.4處理文件上傳的錯誤99 
4.2轉換錯誤信息102 
4.3將基本信息放到會話中103 
4.4自定義錯誤頁面107 
4.5使用矩陣變量進行URL映射108 
4.6將其組合起來114 
4.7檢查點121 
4.8小結122 


第5章創建RESTful應用123 
5.1什麼是REST 123 
5.2 Richardson的成熟度模型124 
5.2.1第0級——HTTP 124 
5.2.2第1級——資源124 
5.2.3第2級——HTTP動作124 
5.2.4第3級——超媒體控制126 
5.3 API版本化127 
5.4有用的HTTP代碼1 27 
5.5客戶端為王128 
5.6調試RESTful API 130 
5.6.1 JSON格式化擴展130 
5.6.2瀏覽器中的RESTful 客戶端130 
5.6.3 httpie 131 
5.7自定義JSON輸出131 
5.8用戶管理API 136 
5.9狀態碼與異常處理140 
5.9.1帶有狀態碼的ResponseEntity 140 
5.9.2使用異常來處理狀態碼142 
5.10通過Swagger實現文檔化146 
5.11生成XML 148 
5.12檢查點149 
5.13小結150 


第6章保護應用151 
6.1基本認證151 
6.1.1用戶授權152 
6.1.2 URL授權155 
6.1.3 Thymeleaf安全標籤156 
6.2登錄表單158 
6.3 Twitter認證163 
6.3.1搭建社交認證環境164 
6.3.2詳解167 
6.4分佈式會話169 
6.5 SSL 171 
6.5.1生成自簽名的證書172 
6.5.2單一模式173 
6.5.3雙通道模式173 
6.5.4置於安全的服務器之後174 
6.6檢查點175 
6.7小結175 


第7章不要心存僥倖——單元測試與驗收測試176 
7.1為什麼要測試我的代碼176 
7.2該如何測試自己的代碼177 
7.3測試驅動開發178 
7.4單元測試179 
7.5驗收測試180 
7.6第一 單元測試180 
7.7 Mock與Stub 184 
7.7.1使用Mockito進行mock 184 
7.7.2在測試時Stub bean 186 
7.7.3該使用Mock還是Stub 189 
7.8對REST控制器進行單元測試189 
7.9測試認證196 
7.10編寫驗收測試198 
7.10.1 Gradle配置198 
7.10.2第一個FluentLenium 測試200 
7.10.3使用FluentLenium創建頁面對象206 
7.10.4用Groovy實現測試209 
7.10.5使用Spock進行單元測試210 
7.10.6使用Geb進行集成測試213 
7.10.7在Geb中使用頁面對象215 
7.11檢查點218 
7.12小結220 


第8章優化請求221 
8.1生產環境的profile 221 
8.2 Gzip 222 
8.3緩存控制222 
8.4應用緩存224 
8.4.1緩存失效229 
8.4. 2分佈式緩存230 
8.5異步方法231 
8.6 ETag 237 
8.7 WebSocket 241 
8.8檢查點244 
8.9小結245 


第9章將Web應用部署到雲中246 
9.1選擇主機246 
9.1.1 Cloud Foundry 246 
9.1.2 OpenShift 247 
9.1. 3 Heroku 248 
9.2將Web應用部署到Pivotal Web Services中248 
9.2.1安裝Cloud Foundry CLI 工具248 
9.2.2裝配應用249 
9.2.3激活Redis 252 
9.3將Web應用部署到Heroku中253 
9.3.1安裝工具254 
9.3.2搭建應用255 
9.3.3 Heroku profile 256 
9.3.4運行應用257 
9.3.5激活Redis 258 
9.4改善應用的功能260 
9.5小結261 


第10章超越Spring Web 262 
10.1 Spring生態系統262 
10.1.1核心263 
10.1.2執行263 
10.1.3數據263 
10.1.4其他值得關注的項目264 
10.2部署264 
10.3單頁面應用265 
10.3.1參與者265 
10.3 .2未來的前景266 
10.3.3實現無狀態267 
10.4小結267