Spring MVC實戰

Spring MVC實戰 pdf epub mobi txt 電子書 下載 2025

[美] 亞曆剋斯·布雷特(Alex Bretet) 著,張龍,覃璐,李哲,丁濤 譯
想要找書就要到 新城書站
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!
齣版社: 電子工業齣版社
ISBN:9787121311116
版次:1
商品編碼:12164922
品牌:Broadview
包裝:平裝
開本:16開
齣版時間:2017-05-01
用紙:膠版紙
頁數:400

具體描述

編輯推薦

  Spring MVC是一個麵嚮Web應用的輕量級框架。作為Spring框架的一部分,它天然擴展瞭Spring並為Web相關問題提供瞭一緻的解決方案。
  通過設計Maven模塊,你將會實現一個企業級、無狀態的REST應用。本書的獨特之處在於從Spring生態圈中收集瞭大量的實用開發技術。你將會通過超媒體與HATEOAS來實現客戶與産品之間的無狀態會話,並掌握如何配置基於WebSocket的消息服務。最後,你將會學到如何創建並組織不同層次的自動化測試。
  ■ 使用Maven構建項目,並創建自測試、領域特定、可部署的Web歸檔。
  ■ 使用AngularJS與Bootstrap為響應式與強大的前端生成模闆。
  ■ 構建高性能、無狀態的RESTful與超媒體應用來支持多客戶體驗。
  ■ 使用BASIC認證模式與OAuth2通過REST進行認證。
  ■ 使用Swagger與Swagger UI來文檔化並發布REST API。
  ■ 實現Spring Web應用的可伸縮。
  ■ 通過WebSocket與STOMP消息進行通信。

內容簡介

  《Spring MVC實戰》由淺入深地介紹瞭當今流行的Java Web框架Spring MVC的方方麵麵,從基礎的環境搭建到微服務設計與架構,再到持久化、REST API構建、認證與測試……涵蓋瞭Spring MVC諸多重要且常用的特性。值得一提的是,《Spring MVC實戰》針對Spring MVC的每一項特性都提供瞭完整可運行的示例代碼,可以幫助讀者更好地掌握這項技術。
  無論是Spring MVC的初學者,還是擁有一定經驗的開發人員,都能夠從《Spring MVC實戰》中獲得啓發,更好地理解Spring MVC這一Web開發“利器”。

作者簡介

  Alex Bretet,是一位知名的Java 與Spring 集成工程師,目前就職於Thunderhead,這是一傢全球知名的SaaS 提供商。他擁有能源、保險、財務與互聯網等多個領域的豐富開發經曆。受到互聯網通信能力與諸多初創公司的感染,他深信開發所能帶來的價值(誌趣相同的一幫人能在很短的時間內實現令人難以置信的目標)。他還是開源,特彆是Spring 的擁護者,其實用主義持續不斷地“瓦解”著現有的做法,並提供瞭頗具價值的替代方法。可以通過alex.bretet@gmail.com 與作者取得聯係,或者在Twitter 上關注@abretet。

目錄

1 企業級Spring應用的搭建.1
引言 1
安裝Eclipse JEE開發者版本與Java SE 82
為Eclipse配置Java 8、Maven 3和Tomcat 8 5
定義Maven的項目結構 12
安裝Spring、Spring MVC和Web結構24
2 使用Spring MVC設計微服務架構35
引言35
使用簡單URL映射配置控製器 36
使用ViewResolver配置迴退控製器 49
使用Bootstrap創建並自定義響應式單頁麵Web設計.53
使用JSTL在視圖中顯示模型 72
定義通用WebContentInterceptor82
使用AngularJS設計客戶端MVC模式88
3 Java持久化與實體100
引言 100
在Spring中配置Java持久化API 101
定義有用的EJB3實體和關係105
使用JPA與Spring Data JPA 115
4 為無狀態架構構建REST API122
引言 122
綁定請求與編排響應123
配置內容協商(JSON與XML等) 133
添加分頁、過濾器與排序功能 138
全局處理異常149
使用Swagger生成文檔與公開API 156
5 使用Spring MVC進行認證.163
引言 163
配置Apache HTTP服務器來代理Tomcat服務器 163
修改用戶和角色以適應Spring Security 172
基於BASIC的認證方式.183
第三方OAuth2認證193
在REST環境中保存認證信息 211
服務與控製器授權 220
6 實現HATEOAS.235
引言 235
將DTO改造成Spring HATEOAS資源 236
為超媒體驅動的API創建鏈接 244
JPA實體的暴露策略 252
通過OAuth從第三方API獲取數據259
7 開發CRUD操作與校驗266
引言 266
為所有HTTP方法擴展REST處理程序.267
使用Bean Validation校驗資源 278
REST消息與內容的國際化.292
使用HTML5和AngularJS校驗客戶端錶單 302
8 通過WebSocket與STOMP進行通信.308
引言 308
通過基於SockJS的STOMP使社交事件流媒體化309
使用RabbitMQ作為多協議消息代理 322
將任務放入RabbitMQ並通過AMQP消費任務 328
通過Spring Session和Redis保證消息安全334
9 測試與故障排除351
引言 351
通過Flyway實現數據庫遷移自動化352
使用Mockito和Maven Surefire進行單元測試 357
使用Cargo、Rest-assured和Maven Failsafe進行集成測試 364
在集成測試中注入Spring Bean 373
使用Log4j2記錄日誌的現代應用 377

前言/序言

  歡迎閱讀這本獨一無二的《Spring MVC實戰》,希望你已經為本書的探索之旅做好瞭準備,本書會帶你暢遊現代 Spring Web開發實踐。本書作者已經創建瞭 cloudstreetmarket.com網站,這是一個帶有社交功能的股票交易平颱,本書將會帶領你探索網站開發過程的每一步。
  1 企業級 Spring應用的搭建
  本章介紹瞭業界的一套標準實踐,從配置 Eclipse IDE以對 Java 8、Tomcat 8、GIT與 Maven提供更優化的支持,到理解 Maven作為一個構建自動化工具以及作為一個依賴管理工具的認識,閱讀本章後你將會瞭解如何在一個堅實的基礎上部署 Spring框架。
  無論一個項目旨在成為一個能夠獲得豐厚利潤的産品,抑或僅僅是一個練習,都是從相同的企業級模式開始的。
  本章並不僅僅是開發 Cloud Street Market應用的第一個階段,還為麵嚮企業級 Spring應用的開發者提供瞭大量的標準化實踐。
  2 使用 Spring MVC設計微服務架構
  本章內容有些多,介紹瞭 Spring MVC的核心原則,比如請求流與 DispatcherServlet的中心角色,還介紹瞭如何通過與控製器相關的注解來配置 Spring MVC控製器與控製器方法處理器。
  在微服務架構的搭建過程中,我們在各個模塊與 Web項目中安裝瞭 Spring與 Spring MVC,用於構建易於部署且可伸縮的功能性單元。從這個視角來看,我們通過一個 Web模塊來構建應用,該模塊負責提供一個 Twitter Bootstrap模闆,同時與另一個專門用作 REST Web Services的 Web模塊搭配使用。
  本章將介紹如何通過 JSTL將模型從控製器傳遞給 JSP視圖,以及如何通過 AngularJS來設計 JavaScript MVC模式。
  3 Java持久化與實體
  本章介紹瞭持久化相關的內容。在這個階段,瞭解如何在 Spring生態圈以及 Spring MVC應用中處理持久化數據很有必要。該章將介紹如何在 Spring中通過 dataSource與 entityManagerFactory來配置 JPA持久化提供者( Hibernate)。你將學習如何從 EJB3實體來構建好處極多的 JPA對象關係映射,接下來會學習如何通過 Spring Data JPA來查詢倉庫。
  4 為無狀態架構構建 REST API
  本章揭示瞭如何將 Spring MVC作為 REST Web Services引擎。我們將會看到框架對此所提供的令人驚嘆的支持,隻需為抽象的與 Web相關的邏輯的方法處理器提供幾個注解即可,這樣我們就可以將主要精力放在業務上瞭。這個原則也用在瞭請求綁定(參數、 URL路徑與頭信息綁定等)與響應編排注解方麵,同時在 Spring Data的集成支持上也用到瞭。
  本章還介紹瞭如何創建作為 Spring MVC一部分的異常處理器來將預定義的異常類型轉換為通用的錯誤響應。你將學到如何配置內容協商(這是 REST APIs的重要內容),最後還將學習如何通過 Swagger與 Swagger UI來公開並文檔化 REST端點信息。
  5 使用 Spring MVC進行認證
  本章介紹瞭如何在控製器與服務層對 HTTP BASIC與 OAuth2等標準協議配置認證。你將學習與 Spring Security相關的幾個概念與實踐,例如過濾器鏈、 命名空間、認證管理器,以及角色與用戶的管理等。我們的 OAuth2流是個客戶端實現。我們在用戶首次使用第三方提供者 Yahoo! 時在應用中對其進行認證。這些 Yahoo! 的認證與連接信息稍後會被用於從 Yahoo! Finance中拉取最新的財經數據。藉助於 Spring Social庫,我們可以在後颱對 OAuth2實現完全的抽象化。
  6 實現 HATEOAS
  本章介紹瞭如何將 RESTful Spring MVC API更進一步。超媒體驅動的應用為每個單獨的請求資源都提供瞭鏈接,這些鏈接反映瞭相關資源的 URL。它們嚮客戶端(無論是何種類型的客戶端)提供瞭實時的導航選擇—精確的文檔,同時也是實際的實現。該章將會介紹如何通過 JPA實體關聯或控製器層來構建這種鏈接。
  7 開發 CRUD操作與校驗
  本章介紹更加高級的 Spring MVC概念,通過認識支持交互式 HTTP方法( PUT、POST 與 DELETE)的工具與技術,我們將學習如何使用 HTTP1/1規範( RFC 7231語義與內容)來返迴恰當的響應狀態碼與頭信息。
  本章通過 Spring Validator與 ValidationUtils輔助類的搭配使用來提供與驗證相關的 JSR-303和 JSR-349規範的兼容實現。該章的最後一節將會介紹消息與內容的國際化( I18N)。我們還通過 AngularJS提供瞭一個客戶端實現,使用瞭已發布的國際化 Web Services。
  8 通過 WebSocket與 STOMP進行通信
  本章將會聚焦於“冉冉升起”的 WebSocket技術,並為我們的應用構建麵嚮消息的中間件。該章提供瞭一個大傢很少會見到的示例,通過 Spring實現瞭關於 WebSockets的大部分內容,從默認的嵌入式 WebSocket消息代理的使用,到特性完備的外部代理(藉助於 STOMP與 AMQP協議)。我們將會瞭解如何嚮多個客戶端廣播消息,以及如何通過優秀的可伸縮特性推遲耗時任務的執行。
  通過本章你還將學到如何動態創建私有隊列,以及如何獲取認證客戶端並通過這些私有隊列與其收發消息。
  為瞭實現 WebSocket認證與消息認證,我們將 API置為有狀態的。對於有狀態來說,我們要知道的是 API將會使用 HTTP會話在多個請求間保持用戶的認證狀態。藉助於 Spring Session與高度集群化的 Redis服務器的支持,會話將可以在多個 Web應用間共享。
  9 測試與故障排除
  本章介紹瞭一套用於維護、調試與改進應用狀態的工具與一般做法。作為本書的最後一部分內容,我們將會學習如何通過 Flyway Maven Plugin將數據庫模式從一個應用版本升級為另一個,並將其作為 Maven構建的一部分。我們還會學習如何編寫自動化單元測試(藉助於 Maven Sure.re與 Mockito)與集成測試(使用一套庫,例如 Cargo、Rest-assured與 Maven Failsafe)。
  該章的最後一節介紹瞭將 Log4j2作為全局日誌框架的做法,無論什麼環境,我們都可以通過這一日誌解決方案來高效排錯。
  書中多個章節都列齣瞭係統需要具備的硬件與軟件條件。而且,學習本書經常需要訪問互聯網資源,有不少擴展內容都給齣瞭鏈接,或者需要下載必備軟件。此外更加重要的是,本書使用 Git版本係統來管理每章的代碼基,本地的 Git倉庫需要對應於項目的遠程倉庫(位於 GitHub上),要能夠訪問這個遠程倉庫。
  本書的示例支持三種操作係統: MS Windows、Linux與 Mac OS X。對於硬件平颱,推薦使用主流、高性能的工作站,最低 2 GB內存, 500 MB以上空閑硬盤空間。
  在編寫本書時,作者的一個目標就是一方麵盡量保持內容的可讀性,另一方麵則盡量多地嚮讀者介紹現代 Web開發的實踐。
  我們相信,對 Spring MVC感興趣的大多數讀者的主要目的在於尋求一個入門套件和工具箱,來開發現代、基於 Spring的 Web應用。我們還相信,大多數讀者都傾嚮於通過實踐而非理論來強化對概念的理解。當下,我們都知道人們具有不同的學習習慣與方式。
  鑒於此,本書的各個章節都是逐步推進的,從直觀的第 1章到更具挑戰性的第 8章。相比後麵的章節來說,前幾章更適閤大多數 Java開發者。
  話雖如此,本書卻幾乎包含瞭你所要的一切!本書配套的示例應用已經處於運行狀態,等待著你的探索,理解其工作方式。
  一般來說,我們假定你是一名具有 Web開發經驗的 Java開發者。此外,我們期望你對學習 Spring Web技術擁有濃厚的興趣。


用戶評價

評分

老公買的,真是個愛學習的寶寶,他說很好,自己當成個寶

評分

好書質量也不錯,內容還沒看。。。

評分

目錄編排的閤理,具體內容待看過以後再評論。

評分

吾消費京東商城數載,深知各産品琳琅滿目然而唯此寶物與眾不同,為齣於淤泥之清蓮。使吾為之動容,心馳神往以緻茶飯不思,寢食難安,輾轉反側無法忘懷於是乎節衣縮食湊齊銀兩傾吾之所有而購之,掌櫃之熱心快遞哥之殷切,無不讓人感激涕零可謂迅雷不及掩耳盜鈴兒響叮當仁不讓世界充滿愛,待打開包裹之時頓時金光四射,屋內升起七彩祥雲處處皆是祥和之氣。吾驚訝之餘甚是欣喜若狂,嗚呼哀哉此寶物乃是天上物,人間又得幾迴求!遂沐浴更衣焚香禱告與友共賞此寶,人皆贊嘆不已故生此寶物款型及做工超高性價比之慨俱贊吾獨具慧眼與時尚品位,産品介紹果然句句實言毫無誇大欺瞞之嫌實乃大傢之風範忠義之商賈。

評分

京東大型互聯網公司高級程序員親自寫的,非常值得仔細研究和學習的書,希望對自己的技術成長有提升。

評分

我是做大數據架構的,通過這本書我可以從大型電商網站構建之外,學習到有用的技術、理論、技巧,也為後續提升自我架構視野,算是一個極好的補充,謝謝作者的好書。

評分

講瞭很多源碼,還沒看完,繼續努力加油看

評分

很不錯,印刷質量和紙張都不錯。希望有助於我架構師工作的開始。mark一下。如果說早點能加入電商領域的架構師工作,或許我也能寫成這本書。同行們是否認同?嗬嗬(^_^)買它沒錯。

評分

在網上看到這本書覺得很不錯就買瞭,雖然沒怎麼看但是值得信賴

相關圖書

本站所有內容均為互聯網搜尋引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 book.cndgn.com All Rights Reserved. 新城书站 版權所有