以JSP技術為基礎,整合Servlet、JavaBean、Struts 2、Hibernate、Spring等技術開發Java Web應用,目前已成為主流的Java Web開發技術體系。
《Java Web應用程序開發任務驅動式教程》在充分調研Web程序員崗位需求的基礎上優選與重構教學內容,以Java Web應用開發技術為主線,漸進式系統化地設計教學單元。全書劃分為9個單元: 基于JSP指令和標簽的Web應用程序開發,基于JSP內置對象的Web應用程序開發,基于JDBC的Web應用程序開發,基于Servlet的Web應用程序開發,基于JavaBean的Web應用程序開發,基于Struts 2的Web應用程序開發,基于Hibernate的Web應用程序開發,基于Spring的Web應用程序開發及SSH2與MVC的網上購物系統典型功能模塊的開發。這9個單元按由淺入深、由易到難、由簡單到綜合的順序排列,符合學習者的認知規律和技能形成規律。
本書每個教學單元面向教學全過程設置8個教學環節: 問題探析→知識必備→操作必備→基礎應用→漸進應用→典型應用→單元小結→單元習題。采用“任務驅動、理論實踐一體”的教學模式,強調“學用結合、做中學”的教學理念。理論知識與實際應用有機結合,在分析實際需求、解決實際問題過程中學習編程知識,體會編程規則,積累編程經驗,逐步具有編程能力。
本書可以作為應用本科和高職高專院校計算機各專業和非計算機專業Java Web程序設計課程的教材,也可以作為計算機培訓教材以及自學教材。
隨著Internet技術的飛速發展與Java語言的不斷完善、優化,越來越多的Web程序員義無反顧地踏上了Java Web應用開發之路。最原始的Java Web程序全部使用JSP實現,JSP頁面既包含HTML標簽,又包含Java業務邏輯代碼,使得整個JSP頁面過于臃腫而難以更新與維護。Sun Microsystems公司為規范Java Web應用的開發,相繼推出Model1模式和Model2模式。在Model1模式中引入JavaBean技術,使用JavaBean封裝業務邏輯代碼,使業務邏輯代碼與JSP頁面進行有效的分離,但對于流程控制JavaBean卻無能為力,直到Model2模式引入Servlet技術才真正實現視圖、模型和控制器的徹底分離,從此,Java Web應用開發進入到一個規范化的全新時代。Struts作為Model2模式的經典實現,具有組件的模塊化、靈活性和重用性多方面的優點。同時簡化了基于MVC的Java Web應用程序的開發。
時代在發展,技術在進步,對各種復雜數據及業務邏輯的處理要求也在不斷提高,MVC模型已不能完全滿足高性能、低耦合框架結構的分層需求,此時,引入了持久層概念,用于封裝底層數據的持久化與數據庫訪問操作。在眾多商用或開源的持久層中間件中,Hibernate由于其功能與性能的優越而成為Struts框架最理想的底層數據交換的組件。
Spring致力于Java EE應用的各層的解決方案,而不僅僅專注于某一層的解決方案,可以說Spring是企業應用開發的“一站式”解決方案,并貫穿表現層、業務層和持久層。然而,Spring并不想取代那些已有的成熟框架,而是與它們無縫整合,為Struts與Hibernate提供了極為便利的集成方式,讓SSH(Struts+Spring+Hibernate)成為最佳的組合框架。
伴隨Java Web開發技術的不斷規范與完善,整個Internet經歷了從Web 1.0到Web 2.0的重大變革。在Web 1.0時代,用戶主要通過瀏覽器獲取信息,單純充當網站內容的消費者。Web 2.0則更注重用戶的交互與體驗,用戶既是消費者又是生產者,讓用戶在Internet中找到了自由發揮的空間。
以JSP技術為基礎,整合Servlet、JavaBean、Struts 2、Hibernate、Spring等技術開發Java Web應用已成為當今主流的Java Web開發技術體系。
本書具有以下特色:
(1) 在充分調研Web程序員崗位需求的基礎上優選與重構教學內容,以Java Web應用開發技術為主線,漸進式系統化地設計教學單元。
站在應用技術解決問題與實現功能的角度系統化整合教學內容,本書不是理論知識的匯聚,而是知識的應用,在學習Java Web應用程序開發方法、訓練開發技能過程中逐步理解與掌握Java Web的相關知識。全書劃分為9個單元,這9個單元按由淺入深、由易到難、由簡單到綜合的順序排列,符合學習者的認知規律和技能形成規律。
(2) 每個教學單元面向教學全過程設置8個教學環節。本書從學習者理解與應用Java Web知識實現程序功能的角度,設計合理的教學流程,其中“基礎應用”環節主要關注“基礎知識”的應用,圍繞基礎知識的應用設置程序設計任務,在完成程序設計任務過程中,理解與掌握基礎知識; “典型應用”環節主要關注“典型功能”的實現,圍繞典型功能的實現設置程序設計任務,在實現典型功能過程中,學會運用所學知識解決實際問題,達到學以致用的目的; “漸進應用”環節是在9個單元中循序漸進地使用不同解決方案實施相同的功能模塊,采用比較教學法讓學習者比較相同功能模塊的不同解決方案,了解各種方案的優劣,在比較中熟悉各種Java Web技術的應用。
(3) 本書采用“任務驅動、理論實踐一體”的教學模式,強調“學用結合、做中學”的教學理念。
每個教學單元按照“基礎應用→漸進應用→典型應用”三個層次設置教學任務,采用任務驅動模式探索Java Web應用程序的開發,每一項任務研究一個程序開發問題,主要應用一種Web開發技術,有利于降低學習難度、提高學習效率。
(4) 本書將理論知識與實際應用有機結合,在分析實際需求、解決實際問題過程中學習編程知識、體會編程規則、積累編程經驗、形成編程能力。
每個教學單元的理論知識分別在“問題探析”環節、“知識必備”環節和操作任務的“任務小結”環節進行講解。“問題探析”環節主要針對典型問題進行探析,起著承前啟后的作用; “知識必備”環節主要講解每個單元公共的基礎知識,提供基本方法支持; “任務小結”環節主要針對每項開發任務中所涉及的關鍵知識和主要方法進行歸納總結。各項任務為實現Web應用程序的功能而探尋解決方法、學習Java Web的編程知識,這樣帶著問題進行探索性學習,比平淡乏味地學習理論知識效果會更好。
本書由陳承歡教授編著,寧云智、馮向科、顏謙和、劉榮勝、林東升、楊茜玲、謝樹新、吳獻文、顏珍平、陳雅、言海燕、薛志良、郭外萍、侯偉、肖素華、林保康、張麗芳等老師參與了程序的設計與部分章節的編寫、校對、整理工作。
由于編者水平有限,書中的疏漏之處在所難免,敬請專家與讀者批評指正,編者的QQ號為1574819688。本書免費提供電子教案、源代碼等相關教學資源。
編者2014年8月