TOP
0
0
【簡體曬書節】 單本79折,5本7折,優惠只到5/31,點擊此處看更多!
輕量級Java EE企業應用實戰:Struts 2+Spring 5+Hibernate 5/JPA 2整合開發(簡體書)
滿額折

輕量級Java EE企業應用實戰:Struts 2+Spring 5+Hibernate 5/JPA 2整合開發(簡體書)

商品資訊

人民幣定價:128 元
定價
:NT$ 768 元
優惠價
87668
領券後再享88折起
海外經銷商無庫存,到貨日平均30天至45天
可得紅利積點:20 點
相關商品
商品簡介
作者簡介
目次

商品簡介

本書是《輕量級Java EE企業應用實戰》的第5版,這一版保持了前幾版內容全面、深入的特點,主要完成全部知識的升級。本書介紹了Java EE領域的四個開源框架和技術:Struts 2、Spring、Hibernate和JPA。其中Struts 2升級到2.5.14,Spring升級到5.0.2,Hibernate升級到5.2.12。第5版新增介紹了JPA的內容,包括其API的基本用法、JPA查詢、JPA動態條件查詢等。本書還全面介紹了Servlet 3.1的新特性,以及Tomcat 8.5的配置和用法,本書的示例也應該在Tomcat 8.5上運行。本書重點介紹了如何整合Struts 2.5+Spring 5.0+Hibernate 5.2進行Java EE開發,主要包括三部分。第一部介紹了Java EE開發的基礎知識,以及如何搭建開發環境。第二部分詳細講解了Struts 2.5、Spring 5.0、Hibernate 5.2、JPA的用法,在介紹三個框架時,以Eclipse IDE的使用來上手,一步步帶領讀者深入這些技術的核心。這部分內容是筆者講授“瘋狂Java實訓”的培訓講義,因此是本書的重點部分。這部分內容既包含了筆者多年開發經歷的領悟,也融入了豐富的授課經驗。第三部分示範開發了一個包含7個表,表之間具有複雜的關聯映射、繼承映射等關係,且業務也相對複雜的工作流案例,希望讓讀者理論聯繫實際,將三個框架真正運用到實際開發中。該案例采用目前非常流行、規範的Java EE架構,整個應用分爲領域對象層、DAO層、業務邏輯層、MVC層和視圖層,各層之間分層清晰,層與層之間以松耦合的方式組織在一起。該案例既提供了與IDE無關的、基于Ant管理的項目源碼,也提供了基于Eclipse IDE的項目源碼,以最大限度地滿足讀者的需求。本書不再介紹Struts 1.x相關內容,如果讀者希望獲取《輕量級Java EE企業應用實戰》第1版中關于Struts 1.x的知識,請登錄http://www.crazyit.org下載。當讀者閱讀此書遇到技術難題時,也可登錄http://www.crazyit.org發帖,筆者將會及時予以解答。在閱讀本書之前,建議先認真閱讀筆者所著的《瘋狂Java講義》一書。本書適合于有較好的Java編程基礎,或者有初步JSP、Servlet基礎的讀者閱讀。本書尤其適合于對Struts 2、Spring、Hibernate瞭解不够深入,或者對Struts 2+ Spring+Hibernate整合開發不太熟悉的開發人員閱讀。

作者簡介

李剛,十餘年軟件開發從業經驗,瘋狂軟件教育中心教學總監。瘋狂Java實訓營創始人,瘋狂Java體系原創圖書作者。廣東技術師範學院計算機科學系兼職副教授,CSDN特邀講師。培訓的學生已在騰訊、阿裡、華為、IBM、網易、唯品會、電信盈科等名企就職。國內知名高端IT技術圖書作家,已出版《瘋狂Java講義》《瘋狂Android講義》《輕量級Java EE企業應用實戰》《瘋狂前端開發講義》《瘋狂HTML5/CSS3/JavaScript講義》《瘋狂iOS講義(基礎篇)(提高篇)》《瘋狂XML講義》《經典JavaEE企業應用實戰》《Struts 2.x quanwei指南》等著作。其中瘋狂Java體系圖書均已沉澱多年,贏得極高的市場認同,多次重印,多部著作印刷數量超過10萬冊,並被多所“985”“211”院校選作教材,部分圖書已被翻譯成繁體中文版,授權到中國臺灣地區。

前 言
經過多年沉澱,Java EE平臺已經成為電信、金融、電子商務、保險、證券等各行業的大型應用系統的首選開發平臺。在企業級應用的開發選擇上,.Net已趨式微,PHP通常只用于開發一些企業展示站點或小型應用,因此這些開發語言、開發平臺基本上已無法與Java EE進行對抗了。
Java EE開發大致可分為兩種方式:以Spring為核心的輕量級Java EE企業開發平臺;以EJB 3+JPA為核心的經典Java EE開發平臺。無論使用哪種平臺進行開發,應用的性能、穩定性都有很好的保證,開發人群也有很穩定的保證。
本書介紹的開發平臺,就是以Struts 2.5+Spring 5.0+Hibernate 5.2/JPA(在實際項目中可能以MyBatis代替Hibernate/JPA)為核心的輕量級Java EE,這種組合在保留經典Java EE應用架構、高度可擴展性、高度可維護性的基礎上,降低了Java EE應用的開發、部署成本,對於大部分中小型企業應用是首選。在一些需要具有高度伸縮性、高度穩定性的企業應用(比如銀行系統、保險系統)中,以EJB 3+JPA為核心的經典Java EE應用則具有一定的佔有率。本書姊妹篇《經典Java EE企業應用實戰》主要介紹了後一種Java EE開發平臺。
本書主要升級了《輕量級Java EE企業應用實戰》的知識。本書採用最新的Tomcat 8.5作為Web服務器,全面而細緻地介紹了Servlet 3.1的新特性,並將Struts 2升級到Struts 2.5.14,將Spring升級到5.0.2,將Hibernate升級到5.2.12。本書詳細介紹了Spring和Hibernate的“零配置”特性,並充分介紹了Struts 2的Convention(約定)支持。為了順應技術的改變,本書介紹的Hibernate持久化映射已經全部升級為注解方式,不再採用傳統的XML映射方式。本書還詳細介紹了Spring 3.1新增的緩存機制,包括使用@Cacheable執行緩存,使用@CacheEvict清除緩存等,也詳細介紹了Spring 5.0的改變,包括Spring 5.0引入的@NonNull、@NonNullApi、@NonNullFields等新注解。
Hibernate 5.x的變化較大,Hibernate進一步向JPA規範靠攏,它的不少API都借用於JPA規範。此外,Hibernate將自身的動態條件查詢API標記為過時(未來會刪除它們),全面改為使用JPA的動態條件查詢API。因此,本書同時介紹了Hibernate 5.2和JPA規範的用法,包括Hibernate API與JPA API之間的對應關係,使用Hibernate與JPA的區別,並詳細介紹了JPA的基本用法、JPA批量操作、JPQL查詢、JPA動態條件查詢等,讀者可通過本書同時掌握Hibernate和JPA的用法。

本書創作感言
筆者首先要感謝廣大讀者對本書前幾版的認同,本書前幾版累計發行十幾萬冊,並獲得中國書刊發行業協會頒發的“2011年度全行業優秀暢銷品種”大獎,且多次獲得電子工業出版社頒發的“最暢銷圖書獎”。是廣大讀者的選擇讓“瘋狂Java體系”圖書大放異彩;是廣大讀者的支持讓我在孤獨的技術創作道路上堅持求索;是廣大讀者的反饋讓“瘋狂Java體系”圖書日臻完美。
廣大讀者的熱情對我來說既是支持,又是責任―“瘋狂Java體系”圖書有責任必須完美!因此筆者在改進、升級“瘋狂Java體系”圖書時,有一種如履薄冰的感覺,希望以最大的努力來貢獻最好的作品。
另外,本書還有一本配套的姊妹篇:《經典Java EE企業應用實戰》。學習本書時可以採用“輕經合參”的方式來學習―“輕”指的是以SSH整合的輕量級Java EE開發平臺,“經”指的是以EJB3+JPA整合的經典Java EE開發平臺;這兩種平臺本身具有很大的相似性,將兩種Java EE開發平臺結構放在一起參考、對照著學習,能更好地理解Spring、Hibernate框架的設計思想,從而更深入地掌握它們。與此同時,也可以深入理解EJB 3與Spring容器中的Bean、EJB容器與Spring容器之間的聯繫和區別,從而融會貫通地掌握EJB 3+JPA整合的開發方式。
在介紹非常專業的編程知識之時,筆者總會通過一些淺顯的類比來幫助讀者更好地理解。“簡單、易讀”成為筆者一貫堅持的創作風格,也是“瘋狂Java體系”圖書的特色。另外,“瘋狂Java體系”圖書的知識也很全面、實用。筆者希望讀者在看完“瘋狂Java體系”圖書之後,可以較為輕鬆地理解書中所介紹的知識,並切實學會一種實用的開發技術,進而將之應用到實際開發中。如果讀者在學習過程中遇到無法理解的問題,可以登錄瘋狂Java聯盟(http://www.crazyit.org)與廣大Java學習者交流,筆者也會通過該平臺與大家一起交流、學習。

本書有什麼特點
本書保持了《輕量級Java EE企業應用實戰》前幾版簡單、實用的優勢,同樣堅持讓案例說話,以案例來介紹知識點的風格。本書最後同樣示範開發了企業工作流案例,希望讀者通過該案例真正步入實際企業開發的殿堂。
本書依然保留了《輕量級Java EE企業應用實戰》前幾版的三個特色。
1.經驗豐富,針對性強
筆者既擔任過軟件開發的技術經理,也擔任過軟件公司的培訓導師,還從事過職業培訓的專職講師。這些經驗影響了筆者寫書的目的,本書不是一本學院派的理論讀物,而是一本實際的開發指南。
2.內容實際,實用性強
本書所介紹的Java EE應用範例,採用了目前企業流行的開發架構,絕對嚴格遵守Java EE開發規範,而不是將各種技術雜亂地糅合在一起號稱Java EE。讀者參考本書的架構,完全可以身臨其境地感受企業實際開發。
3.高屋建瓴,啟發性強
本書介紹的幾種架構模式,幾乎是時下最全面的Java EE架構模式。這些架構模式可以直接提升讀者對系統架構設計的把握。

本書寫給誰看
如果你已經掌握Java SE內容,或已經學完了《瘋狂Java講義》一書,那麼你非常適合閱讀此書。除此之外,如果你已有初步的JSP、Servlet基礎,甚至對Struts 2、Spring 5.0、Hibernate 5.2、JPA有所瞭解,但希望掌握它們在實際開發中的應用,本書也將非常適合你。如果你對Java的掌握還不熟練,則建議遵從學習規律,循序漸進,暫時不要購買、閱讀此書,而是按照《瘋狂Java學習路線圖》中的建議順序學習。

2018-1-10

目次

第1章 Java EE應用和開發環境 1
1.1 Java EE應用概述 2
1.1.1 Java EE應用的分層模型 2
1.1.2 Java EE應用的組件 3
1.1.3 Java EE應用的結構和優勢 4
1.1.4 常用的Java EE服務器 4
1.2 輕量級Java EE應用相關技術 5
1.2.1 JSP、Servlet 3.x和JavaBean及替代技術 5
1.2.2 Struts 2.5及替代技術 5
1.2.3 Hibernate 5.2及替代技術 6
1.2.4 Spring 5.0及替代技術 6
1.3 Tomcat的下載和安裝 7
1.3.1 安裝Tomcat服務器 8
1.3.2 配置Tomcat的服務端口 9
1.3.3 進入控制台 9
1.3.4 部署Web應用 12
1.3.5 配置Tomcat的數據源 12
1.4 Eclipse的安裝和使用 14
1.4.1 Eclipse的下載和安裝 14
1.4.2 在線安裝Eclipse插件 15
1.4.3 從本地壓縮包安裝插件 17
1.4.4 手動安裝Eclipse插件 17
1.4.5 使用Eclipse開發Java EE應用 17
1.4.6 導入Eclipse項目 20
1.4.7 導入非Eclipse項目 21
1.5 Ant的安裝和使用 22
1.5.1 Ant的下載和安裝 23
1.5.2 使用Ant工具 23
1.5.3 定義生成文件 25
1.5.4 Ant的任務(task) 29
1.6 Maven的安裝和使用 31
1.6.1 下載和安裝Maven 31
1.6.2 設置Maven 32
1.6.3 創建、構建簡單的項目 33
1.6.4 Maven的核心概念 36
1.6.5 依賴管理 41
1.6.6 POM文件的元素 43
1.7 使用SVN進行協作開發 44
1.7.1 下載和安裝SVN服務器 45
1.7.2 配置SVN資源庫 45
1.7.3 下載和安裝SVN客戶端 47
1.7.4 將項目發佈到服務器 47
1.7.5 從服務器下載項目 48
1.7.6 提交(Commit)修改 48
1.7.7 同步(Update)本地文件 48
1.7.8 添加文件和目錄 49
1.7.9 刪除文件和目錄 50
1.7.10 查看文件或目錄的版本變革 50
1.7.11 從以前版本重新開始 50
1.7.12 創建分支 51
1.7.13 沿著分支開發 51
1.7.14 合併分支 52
1.7.15 使用Eclipse作為SVN客戶端 52
1.8 使用Git進行軟件配置管理(SCM) 55
1.8.1 下載和安裝Git、TortoiseGit 56
1.8.2 創建本地資源庫 58
1.8.3 添加(Add)文件和目錄 59
1.8.4 提交(Commit)修改 60
1.8.5 查看文件或目錄的版本變更 61
1.8.6 刪除文件和目錄 62
1.8.7 從以前版本重新開始 62
1.8.8 克隆(Clone)項目 63
1.8.9 創建分支 64
1.8.10 沿著分支開發 64
1.8.11 合併分支 65
1.8.12 使用Eclipse作為Git客戶端 65
1.8.13 配置遠程中央資源庫 67
1.8.14 推送(Push)項目 69
1.8.15 獲取(Fetch)項目和拉取(Pull)項目 70
1.9 本章小結 72

第2章 JSP/Servlet及相關技術詳解 73
2.1 Web應用和web.xml文件 74
2.1.1 構建Web應用 74
2.1.2 配置描述符web.xml 75
2.2 JSP的基本原理 76
2.3 JSP的4種基本語法 80
2.3.1 JSP注釋 80
2.3.2 JSP聲明 81
2.3.3 JSP輸出表達式 82
2.3.4 JSP小腳本 83
2.4 JSP的3個編譯指令 85
2.4.1 page指令 85
2.4.2 include指令 89
2.5 JSP的7個動作指令 90
2.5.1 forward指令 90
2.5.2 include指令 92
2.5.3 useBean、setProperty、getProperty指令 93
2.5.4 plugin指令 96
2.5.5 param指令 96
2.6 JSP腳本中的9個內置對象 96
2.6.1 application對象 98
2.6.2 config對象 103
2.6.3 exception對象 105
2.6.4 out對象 107
2.6.5 pageContext對象 108
2.6.6 request對象 109
2.6.7 response對象 116
2.6.8 session對象 120
2.7 Servlet介紹 122
2.7.1 Servlet的開發 122
2.7.2 Servlet的配置 124
2.7.3 JSP/Servlet的生命週期 125
2.7.4 load-on-startup Servlet 126
2.7.5 訪問Servlet的配置參數 127
2.7.6 使用Servlet作為控制器 129
2.8 JSP 2的自定義標簽 133
2.8.1 開發自定義標簽類 133
2.8.2 建立TLD文件 134
2.8.3 使用標簽庫 135
2.8.4 帶屬性的標簽 136
2.8.5 帶標簽體的標簽 139
2.8.6 以頁面片段作為屬性的標簽 141
2.8.7 動態屬性的標簽 143
2.9 Filter介紹 144
2.9.1 創建Filter類 145
2.9.2 配置Filter 146
2.9.3 使用URL Rewrite實現網站偽靜態 149
2.10 Listener介紹 150
2.10.1 實現Listener類 151
2.10.2 配置Listener 152
2.10.3 使用ServletContextAttributeListener 153
2.10.4 使用ServletRequestListener和ServletRequestAttributeListener 154
2.10.5 使用HttpSessionListener和HttpSessionAttributeListener 155
2.11 JSP 2特性 160
2.11.1 配置JSP屬性 160
2.11.2 表達式語言 162
2.11.3 Tag File支持 170
2.12 Servlet 3新特性 172
2.12.1 Servlet 3的注解 172
2.12.2 Servlet 3的Web模塊支持 172
2.12.3 Servlet 3提供的異步處理 174
2.12.4 改進的Servlet API 177
2.13 Servlet 3.1新增的非阻塞式IO 180
2.14 Tomcat 8.5的WebSocket支持 182
2.15 本章小結 187

第3章 Struts 2的基本用法 188
3.1 MVC思想概述 189
3.1.1 傳統Model 1和Model 2 189
3.1.2 MVC思想及其優勢 190
3.2 Struts 2的下載和安裝 191
3.2.1 為Web應用增加Struts 2支持 191
3.2.2 在Eclipse中使用Struts 2 192
3.2.3 增加登錄處理 193
3.3 Struts 2的流程 196
3.3.1 Struts 2應用的開發步驟 196
3.3.2 Struts 2的運行流程 197
3.4 Struts 2的常規配置 198
3.4.1 常量配置 198
3.4.2 包含其他配置文件 204
3.5 實現Action 204
3.5.1 Action接口和ActionSupport基類 206
3.5.2 Action訪問Servlet API 208
3.5.3 Action直接訪問Servlet API 210
3.5.4 使用ServletActionContext訪問Servlet API 212
3.6 配置Action 212
3.6.1 包和命名空間 213
3.6.2 Action的基本配置 216
3.6.3 使用Action的動態方法調用 217
3.6.4 指定method屬性及使用通配符 219
3.6.5 配置默認Action 224
3.6.6 配置Action的默認處理類 225
3.7 配置處理結果 225
3.7.1 理解處理結果 225
3.7.2 配置結果 226
3.7.3 Struts 2支持的結果類型 227
3.7.4 plainText結果類型 229
3.7.5 redirect結果類型 230
3.7.6 redirectAction結果類型 231
3.7.7 動態結果 232
3.7.8 Action屬性值決定物理視圖資源 232
3.7.9 全域結果 234
3.7.10 使用PreResultListener 235
3.8 配置Struts 2的異常處理 236
3.8.1 Struts 2的異常處理機制 236
3.8.2 聲明式異常捕捉 238
3.8.3 輸出異常信息 239
3.9 Convention插件與“約定”支持 240
3.9.1 Action的搜索和映射約定 241
3.9.2 按約定映射Result 243
3.9.3 Action鏈的約定 246
3.9.

您曾經瀏覽過的商品

購物須知

大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。

特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。

為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。

若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。

優惠價:87 668
海外經銷商無庫存,到貨日平均30天至45天

暢銷榜

客服中心

收藏

會員專區