隨筆 - 312, 文章 - 14, 評(píng)論 - 1393, 引用 - 0
          數(shù)據(jù)加載中……

          新書(shū)出版:Java Web開(kāi)發(fā)技術(shù)大全——JSP+Servlet+Struts 2+Hibernate+Spring+Ajax (附源代碼)

          本文為原創(chuàng),如需轉(zhuǎn)載,請(qǐng)注明作者和出處,謝謝!

          源代碼下載



          作者:李寧
          圖書(shū)詳細(xì)信息:
          ISBN:9787302195757
          定價(jià):79.8元
          印次:1-1
          裝幀:平裝
          印刷日期:2009-4-23

          圖書(shū)簡(jiǎn)介:
          SSH是目前最流行的Java Web開(kāi)發(fā)技術(shù)。本書(shū)通過(guò)對(duì)SSH中的各種技術(shù)循序漸進(jìn)地講解,使讀者盡快掌握開(kāi)發(fā)基于SSH的Web程序的方法。本書(shū)內(nèi) 容包括Web客戶端技術(shù)、JSP/Servlet技術(shù)、Struts 2(攔截器、類型轉(zhuǎn)換、輸入校驗(yàn)、上傳和下載文件、Struts 2的各種標(biāo)簽、對(duì) AJAX的支持等)、Spring(Ioc容器、裝配Java Bean、Jdbc和Hibernate模板、事務(wù)管理、Spring AOP等)以及 Hibernate(會(huì)話、映射、標(biāo)準(zhǔn)查詢API、HQL、事務(wù)管理、鎖等)。除此之外,本書(shū)還提供了兩個(gè)完整的實(shí)例來(lái)講解開(kāi)發(fā)SSH的詳細(xì)步驟和方法。 通過(guò)對(duì)這兩個(gè)實(shí)例的學(xué)習(xí),讀者可以對(duì)SSH開(kāi)發(fā)模式有更透徹地理解和認(rèn)識(shí)。
          本書(shū)適合廣大從事Java Web開(kāi)發(fā)工作的技術(shù)人員、對(duì)SSH開(kāi)發(fā)感興趣的人員以及大專院校學(xué)生閱讀,尤其是具有一定的Web開(kāi)發(fā)經(jīng)驗(yàn)的技術(shù)人員。

          前   言
          現(xiàn)在MVC模式已經(jīng)成為Web應(yīng)用的主流開(kāi)發(fā)模式。而Struts框架幾乎可以和MVC模式劃等號(hào),因?yàn)镾truts框架已經(jīng)成為了MVC模式的事實(shí)標(biāo)準(zhǔn)。隨著Struts 1.x的應(yīng)用浪潮席卷全球數(shù)年后,Struts 2又以嶄新的姿態(tài)與世人見(jiàn)面了。
          Struts 2仍然可以繼承Struts 1.x的應(yīng)用模式(Struts + Spring + Hibernate),但關(guān)于    Struts 2+Spring+Hibernate整合的書(shū)卻并不多。為了使讀者盡快了解和掌握如何使用    Struts 2、Spring和Hibernate 3個(gè)框架整合的方式來(lái)開(kāi)發(fā)Web應(yīng)用系統(tǒng),筆者花費(fèi)了大量的時(shí)間來(lái)完成這本關(guān)于Struts 2 + Spring +Hibernate 整合的書(shū)。為了盡可能保證內(nèi)容的準(zhǔn)確和權(quán)威性,筆者查閱了大量的官方文檔,并針對(duì)關(guān)鍵部分閱讀了相應(yīng)的源代碼。
          本書(shū)的寫(xiě)作目標(biāo)就是力爭(zhēng)讓讀者盡可能地掌握Struts 2、Spring和Hibernate,以及這3個(gè)框架整合的相關(guān)知識(shí)。并通過(guò)兩個(gè)完整實(shí)例的講解使讀者盡快融入SSH(Struts+Spring+ Hibernate)大家庭。
          本書(shū)有何特色
          1.從基礎(chǔ)開(kāi)始,由淺入深
          JSP/Servlet技術(shù)是Java Web技術(shù)的基礎(chǔ),很多初學(xué)者在學(xué)習(xí)SSH之前并沒(méi)有很好地掌握該技術(shù),因此,本書(shū)考慮到這個(gè)原因,在第一篇講解了JSP/Servlet以及Web客戶端技術(shù)的基礎(chǔ)知識(shí)。除此之外,在第二~四篇的頭一章都以一個(gè)簡(jiǎn)單的例子開(kāi)始,以使讀者在學(xué)習(xí)每一篇所講的技術(shù)之前,對(duì)這種技術(shù)有一個(gè)初步的了解。并且每一篇的章節(jié)是按照由淺入深、循序漸進(jìn)的順序編排的,從而可以使讀者漸進(jìn)式地學(xué)習(xí)本書(shū)的知識(shí)。
          2.各篇獨(dú)立,內(nèi)容完整
          本書(shū)的每一篇都是相對(duì)獨(dú)立的。如第二篇講解了Struts 2的各種技術(shù);第三篇講解了Hibernate的主要技術(shù),而且每一篇講解的技術(shù)比較完整。這樣就會(huì)給想學(xué)習(xí)SSH整合技術(shù),但卻未掌握SSH中的一項(xiàng)或幾項(xiàng)技術(shù)的讀者帶來(lái)方便,至少不需要同時(shí)準(zhǔn)備幾本書(shū),從而給讀者節(jié)省了大量的時(shí)間和金錢(qián)。
          3.各章實(shí)例豐富,使讀者更容易理解書(shū)中的知識(shí)
          本書(shū)幾乎在每一章都提供了大量的實(shí)例。這些實(shí)例充分展現(xiàn)了相關(guān)知識(shí)點(diǎn)的實(shí)現(xiàn)細(xì)節(jié)。讀者可以在學(xué)習(xí)相關(guān)知識(shí)點(diǎn)后,通過(guò)上機(jī)實(shí)踐這些例子來(lái)更深入地了解并掌握這些知識(shí)點(diǎn)。
          4.提供了完整的實(shí)例,使讀者更進(jìn)一步體會(huì)SSH開(kāi)發(fā)模式的精髓
          在本章的最后還提供了兩個(gè)完整的實(shí)例(網(wǎng)絡(luò)硬盤(pán)和論壇系統(tǒng))。這兩個(gè)實(shí)例都采用了SSH模式進(jìn)行開(kāi)發(fā)。通過(guò)對(duì)這兩個(gè)實(shí)例的深入研究,讀者可以比較全面地掌握基于SSH模式的Web應(yīng)用程序的開(kāi)發(fā)步驟和開(kāi)發(fā)方法,并可將實(shí)例中所采用的技術(shù)應(yīng)用到自己的項(xiàng)目中。
          5.使用最新版本的開(kāi)發(fā)工具和框架
          本書(shū)所使用的開(kāi)發(fā)工具和相關(guān)的框架在筆者寫(xiě)作本書(shū)時(shí)都是最新版本,如MyEclipse 6.5、Struts 2.0.11.2等。讀者可以在學(xué)習(xí)SSH開(kāi)發(fā)技術(shù)的同時(shí),接觸到目前最新版本的開(kāi)發(fā)工具和框架。就算讀者目前所使用的軟件版本低于本書(shū)所使用的軟件版本,也可以為未來(lái)的工作奠定基礎(chǔ)。
          6.配有源代碼與視頻光盤(pán),方便讀者使用
          為了方便讀者實(shí)驗(yàn)本書(shū)提供的實(shí)例程序,特將所有的源代碼都收錄到了配書(shū)光盤(pán)中,以方便讀者使用。另外,作者特別為本書(shū)錄制了一些多媒體視頻演示,將本書(shū)中的一些相關(guān)操作直觀地展示給讀者,以達(dá)到更好的學(xué)習(xí)效果。
          本書(shū)內(nèi)容
          第1章:為了使讀者盡快搭建本書(shū)所使用的開(kāi)發(fā)環(huán)境。在這一章將詳細(xì)介紹本書(shū)所使用的開(kāi)發(fā)工具、框架的版本號(hào)以及下載、安裝和配置的過(guò)程。
          第2章:本章介紹了Web技術(shù)的發(fā)展歷史,以及Java Web技術(shù)的基本組成。最后詳細(xì)描述了Java Web技術(shù)中常用的兩種開(kāi)發(fā)模式:JSP模型1和JSP模型2(MVC模式),以及目前常用的MVC框架。
          第3章:本章介紹了在Web系統(tǒng)中常用的客戶端技術(shù),這些技術(shù)包括JavaScript、CSS和AJAX。在本章的開(kāi)始部分還介紹了一些開(kāi)發(fā)JavaScript的常用IDE。
          第4章:本章介紹了Servlet的基礎(chǔ)知識(shí),如處理請(qǐng)求消息、響應(yīng)消息、Cookie和Session等,最后還詳細(xì)講解了Web開(kāi)發(fā)中所遇到的中文亂碼問(wèn)題的解決方案。
          第5章:本章介紹了JSP的運(yùn)行原理、基本語(yǔ)法、JSP指令、JSP的內(nèi)置對(duì)象、JSP標(biāo)簽和JSTL。
          第6章:本章以一個(gè)用戶注冊(cè)登錄系統(tǒng)為例,演示了如何綜合運(yùn)用JSP/Servlet技術(shù)開(kāi)發(fā)一個(gè)完整的Web應(yīng)用程序。
          第7章:本章介紹了Struts 2中的MVC模式,以及Struts 2的體系結(jié)構(gòu)。最后給出了一個(gè)簡(jiǎn)單的例子來(lái)演示開(kāi)發(fā)基于Struts 2的Web應(yīng)用程序的步驟和方法。
          第8章:本章介紹了如何配置Struts 2框架、Struts 2 Action、處理結(jié)果、模型驅(qū)動(dòng)和異常處理。
          第9章:本章介紹了Struts 2的攔截器技術(shù),其中包括攔截器的實(shí)現(xiàn)原理、攔截器的配置、實(shí)現(xiàn)自定義攔截器以及內(nèi)建攔截器等內(nèi)容。
          第10章:本章介紹了Struts 2中的各種類型轉(zhuǎn)換技術(shù)。如OGNL表達(dá)式、數(shù)組和集合類型轉(zhuǎn)換器、類型轉(zhuǎn)換的錯(cuò)誤處理等。
          第11章:本章介紹了傳統(tǒng)的輸入校驗(yàn)和Struts 2中的輸入校驗(yàn)。
          第12章:本章首先介紹了文件上傳的原理,以及如何使用Commons-FileUpload組件上傳文件。本章的重頭戲是講解Struts 2的上傳功能,其中包括上傳單個(gè)文件和上傳任意多個(gè)文件的方法。在最后介紹了如何使用Struts 2框架下載文件,主要包括使用stream結(jié)果下載文件以及下載文件的權(quán)限控制。
          第13章:本章介紹了Struts 2在國(guó)際化方面的技術(shù)。為了更深入地理解Struts 2的國(guó)際化功能,在本章的開(kāi)始部分首先介紹了Java對(duì)國(guó)際化的支持。然后逐步深入介紹Struts 2的國(guó)際化技術(shù),主要包括訪問(wèn)資源文件、資源文件的加載順序等,最后給出了一個(gè)例子來(lái)演示如何將國(guó)際化功能加載到Web應(yīng)用程序中。
          第14章:本章詳細(xì)講解了Struts 2框架中的標(biāo)簽。這些標(biāo)簽包括控制標(biāo)簽、數(shù)據(jù)標(biāo)簽、表單標(biāo)簽、非表單標(biāo)簽。
          第15章:本章著重介紹了Struts 2框架對(duì)AJAX的支持,主要內(nèi)容包括支持AJAX的標(biāo)簽、基于AJAX的校驗(yàn)、發(fā)布-訂閱事件模型、JSON插件等。
          第16章:本章使用了Struts 2技術(shù)重新實(shí)現(xiàn)了第6章的用戶注冊(cè)登錄系統(tǒng)。在本章實(shí)現(xiàn)的用戶注冊(cè)登錄系統(tǒng)的功能和第6章實(shí)現(xiàn)的該系統(tǒng)的功能相同,只是使用了Struts 2框架來(lái)實(shí)現(xiàn)相關(guān)的部分。讀者可以從中體會(huì)到使用JSP/Servlet和Struts 2在開(kāi)發(fā)Web應(yīng)用程序中的不同。
          第17章:本章介紹了ORM的概念以及Hibernate和EJB的關(guān)系。最后給出一個(gè)例子來(lái)演示在MyEclipse中開(kāi)發(fā)基于Hibernate的系統(tǒng)的步驟和方法。
          第18章:本章介紹了Hibernate的兩種配置方式:配置文件和注釋。在最后給出了一個(gè)例子重新實(shí)現(xiàn)了第17章的例子,只不過(guò)這個(gè)例子使用了注釋來(lái)配置Hibernate。
          第19章:本章介紹了Hibernate會(huì)話的基本操作和O/R映射。其中O/R映射主要介紹了映射主鍵、映射復(fù)合主鍵、映射普通屬性、組件映射、基于注釋的組件映射、多對(duì)一、一對(duì)多、一對(duì)一的關(guān)系。
          第20章:本章的第1節(jié)介紹了Hibernate的標(biāo)準(zhǔn)(Criteria)查詢API技術(shù),主要內(nèi)容包括約束條件、分頁(yè)、排序、聚合和分組以及QBE。在第2節(jié)介紹了Hibernate中的另外兩種查詢技術(shù):HQL和SQL。其中HQL主要介紹了From、Select、Where、Update、Insert以及Delete語(yǔ)句,還介紹了命名參數(shù)、排序和分組、關(guān)聯(lián)查詢、命名查詢等。
          第21章:本章介紹了Hibernate的一些高級(jí)技術(shù),主要包括事務(wù)管理、鎖機(jī)制、查詢緩存、攔截器和事件與過(guò)濾器。
          第22章:本章介紹了Spring的主要特性和核心技術(shù),在最后還給出了一個(gè)例子來(lái)演示使用Spring框架開(kāi)發(fā)程序的過(guò)程。
          第23章:本章介紹了Spring框架的核心思想,反向控制(Ioc),同時(shí)還詳細(xì)講解了Spring框架中最常用的裝配Java Bean技術(shù)以及分散配置和定制屬性編輯器。
          第24章:本章介紹了Spring中的數(shù)據(jù)庫(kù)技術(shù),主要包括在Spring中使用數(shù)據(jù)源連接數(shù)據(jù)庫(kù)、操作JDBC的JdbcTemplate;操作Hibernate的HibernateTemplate以及自增鍵和異常的處理。
          第25章:本章主要介紹了Spring AOP技術(shù)的基礎(chǔ)知識(shí)以及事務(wù)管理。除此之外,還介紹了Spring的其他一些高級(jí)屬性,如建立和訪問(wèn)RMI服務(wù)、發(fā)送Email、調(diào)度任務(wù)等。
          第26章:從本章開(kāi)始逐漸涉及到了SSH開(kāi)發(fā)的全過(guò)程。在本章主要介紹了Struts 2、Spring和Hibernate 3個(gè)框架整合的思路,以及基于SSH的系統(tǒng)的層次結(jié)構(gòu)。
          第27、28章:在這兩章給出了兩個(gè)完整的使用SSH開(kāi)發(fā)的例子(網(wǎng)絡(luò)硬盤(pán)和論壇系統(tǒng))。在這兩個(gè)例子中詳細(xì)描述了開(kāi)發(fā)基于SSH的系統(tǒng)的步驟和其中所涉及到的技術(shù)。開(kāi)發(fā)這兩個(gè)例子的基本步驟類似,不過(guò)它們所涉及到的技術(shù)有一定的區(qū)別,如在論壇系統(tǒng)中涉及到了一個(gè)Web編輯器(FCKEditor)的安裝和使用。
          適合閱讀本書(shū)的讀者
          * 初步掌握J(rèn)ava技術(shù),想進(jìn)一步學(xué)習(xí)SSH整合開(kāi)發(fā)的讀者
          * 對(duì)SSH整合技術(shù)有了一定的了解,想進(jìn)一步提高的讀者
          * 正在使用SSH整合技術(shù)開(kāi)發(fā)項(xiàng)目,想查閱相關(guān)技術(shù)的讀者
          * 大中專院校的學(xué)生
          * 社會(huì)培訓(xùn)學(xué)生

          目    錄
          第1篇  Web開(kāi)發(fā)基礎(chǔ)篇
          第1章  搭建開(kāi)發(fā)環(huán)境    2
          1.1  本書(shū)使用的軟件和框架的版本    2
          1.2  JDK6的下載與安裝    2
          1.3  Eclipse 3.4的下載與安裝    3
          1.4  MyEclipse 6.5的下載與安裝    3
          1.5  Eclipse IDE for Java EE Developers的下載與安裝    4
          1.6  Tomcat 6的下載與安裝    5
          1.7  在MyEclipse中配置Tomcat    6
          1.8  在Eclipse IDE for Java EE Developers中配置Tomcat    6
          1.9  小結(jié)    7
          第2章  Java Web應(yīng)用開(kāi)發(fā)基礎(chǔ)    8
          2.1  Web技術(shù)的發(fā)展    8
          2.2  Java Web技術(shù)    10
          2.2.1  Java Web程序的基本組成    11
          2.2.2  Java Web程序的目錄結(jié)構(gòu)    11
          2.2.3  Java Web程序的配置文件    11
          2.3  MVC模式與MVC框架    12
          2.3.1  JSP模型1和JSP模型2    12
          2.3.2  Web應(yīng)用程序需要的基礎(chǔ)服務(wù)    13
          2.3.3  MVC模式概述    14
          2.3.4  常用的MVC框架    15
          2.4  小結(jié)    16
          第3章  Web開(kāi)發(fā)中的客戶端技術(shù)    17
          3.1  常用的JavaScript IDE簡(jiǎn)介    17
          3.1.1  在MyEclipse中使用JavaScript    17
          3.1.2  在Eclipse IDE for Java EE中使用JavaScript    18
          3.1.3  在NetBeans中使用JavaScript    19
          3.1.4  其他的JavaScript IDE    20
          3.2  JavaScript語(yǔ)法基礎(chǔ)    20
          3.2.1  實(shí)例:編寫(xiě)第一個(gè)JavaScript程序:Greet    21
          3.2.2  變量    22
          3.2.3  原始類型    22
          3.2.4  類型轉(zhuǎn)換    26
          3.2.5  函數(shù)與函數(shù)調(diào)用    28
          3.2.6  類和對(duì)象    30
          3.3  JavaScript高級(jí)技術(shù)    32
          3.3.1  DOM技術(shù)概述    32
          3.3.2  獲得HTML元素的3種方法    34
          3.3.3  實(shí)例:圖像自動(dòng)切換    36
          3.3.4  正則表達(dá)式    37
          3.3.5  實(shí)例:表格排序    38
          3.4  CSS基礎(chǔ)    41
          3.4.1  CSS的基本語(yǔ)法    41
          3.4.2  在Style屬性中定義樣式    42
          3.4.3  在HTML中定義樣式    42
          3.4.4  在外部文件中定義樣式    43
          3.4.5  樣式的繼承    43
          3.5  AJAX基礎(chǔ)    44
          3.5.1  AJAX概述    44
          3.5.2  實(shí)例:使用XMLHttpRequest獲得Web資源    45
          3.5.3  實(shí)例:使用XMLHttpRequest跨域訪問(wèn)Web資源    46
          3.5.4  實(shí)例:AJAX的3種交換數(shù)據(jù)方法    47
          3.6  小結(jié)    49
          第4章  Servlet技術(shù)    50
          4.1  Servlet的Helloworld程序    50
          4.1.1  實(shí)例:在MyEclipse中編寫(xiě)Helloworld程序    50
          4.1.2  實(shí)例:手工編寫(xiě)Helloworld程序    53
          4.2  Servlet基礎(chǔ)    54
          4.2.1  配置數(shù)據(jù)庫(kù)連接池    55
          4.2.2  數(shù)據(jù)庫(kù)連接池的應(yīng)用    56
          4.2.3  實(shí)例:用doGet方法處理客戶端請(qǐng)求    58
          4.2.4  實(shí)例:用doPost方法處理客戶端請(qǐng)求    60
          4.2.5  實(shí)例:用service方法處理客戶端請(qǐng)求    60
          4.2.6  實(shí)例:初始化(init)和銷(xiāo)毀(destroy)Servlet    62
          4.2.7  實(shí)例:使用PrintWriter輸出響應(yīng)消息    64
          4.2.8  實(shí)例:用ServletOutputStream顯示圖像    65
          4.2.9  實(shí)例:使用RequestDispatcher包含Web資源    66
          4.2.10  實(shí)例:使用RequestDispatcher轉(zhuǎn)發(fā)Web資源    68
          4.3  HttpServletResponse類的其他功能    69
          4.3.1  產(chǎn)生狀態(tài)響應(yīng)碼    70
          4.3.2  設(shè)置響應(yīng)消息頭    71
          4.3.3  實(shí)例:驗(yàn)證響應(yīng)頭設(shè)置情況    73
          4..4  使用HttpServletRequest獲得請(qǐng)求消息    73
          4.4.1  獲取請(qǐng)求行消息    74
          4.4.2  獲取網(wǎng)絡(luò)連接消息    74
          4.4.3  獲取請(qǐng)求頭消息    75
          4.5  處理Cookie    76
          4.5.1  什么是Cookie    76
          4.5.2  Cookie類中的方法    76
          4.5.3  實(shí)例:用Cookie讀寫(xiě)客戶端信息    77
          4.5.4  實(shí)例:用Cookie讀寫(xiě)復(fù)雜數(shù)據(jù)    79
          4.6  處理Session    81
          4.6.1  什么是Session    81
          4.6.2  HttpSession接口中的方法    81
          4.6.3  HttpServletRequest接口中的Session方法    83
          4.6.4  實(shí)例:通過(guò)Cookie跟蹤Session    83
          4.6.5  實(shí)例:通過(guò)重寫(xiě)URL跟蹤Session    85
          4.7  Web開(kāi)發(fā)的中文問(wèn)題    87
          4.7.1  Java的編碼原理    87
          4.7.2  實(shí)例:解決輸出中文亂碼問(wèn)題    89
          4.7.3  實(shí)例:解決服務(wù)端程序讀取中文請(qǐng)求消息的亂碼問(wèn)題    90
          4.7.4  實(shí)例:用AJAX技術(shù)發(fā)送和接收中文信息    92
          4.7.5  實(shí)例:在請(qǐng)求消息頭和響應(yīng)消息頭中轉(zhuǎn)輸中文    95
          4.8  小結(jié)    97
          第5章  JSP技術(shù)    98
          5.1  用MyEclipse編寫(xiě)第一個(gè)JSP程序    98
          5.1.1  實(shí)例:編寫(xiě)顯示服務(wù)器當(dāng)前時(shí)間的JSP程序    98
          5.1.2  調(diào)試JSP程序    100
          5.1.3  改變JSP的訪問(wèn)路徑和擴(kuò)展名    101
          5.1.4  手動(dòng)發(fā)布JSP程序    102
          5.2  JSP的運(yùn)行原理    102
          5.2.1  Tomcat如何處理JSP頁(yè)    103
          5.2.2  分析由JSP生成的Servlet代碼    104
          5.3  JSP基本語(yǔ)法    108
          5.3.1  JSP表達(dá)式    109
          5.3.2  在JSP中嵌入Java代碼    109
          5.3.3  JSP聲明    111
          5.3.4  JSP表達(dá)式語(yǔ)言(EL)    113
          5.3.5  實(shí)例:用EL函數(shù)替換HTML中的特殊字符    115
          5.3.6  JSP頁(yè)面中的注釋    117
          5.4  JSP指令    118
          5.4.1  JSP指令簡(jiǎn)介    118
          5.4.2  page頁(yè)面指令    119
          5.4.3  include加入指令    125
          5.5  JSP的9個(gè)內(nèi)置對(duì)象    126
          5.5.1  out輸出對(duì)象    126
          5.5.2  pageContext封裝對(duì)象    128
          5.5.3  其他的JSP內(nèi)置對(duì)象    129
          5.6  JSP標(biāo)簽    132
          5.6.1  <jsp:include>插入標(biāo)簽    132
          5.6.2  <jsp:forward>轉(zhuǎn)發(fā)標(biāo)簽    134
          5.6.3  <jsp:param>傳參標(biāo)簽    135
          5.6.4  <jsp:useBean>創(chuàng)建Bean標(biāo)簽    136
          5.6.5  <jsp:setProperty>設(shè)置屬性值標(biāo)簽    138
          5.6.6  <jsp:getProperty>獲取屬性值標(biāo)簽    140
          5.7  JSP的標(biāo)準(zhǔn)標(biāo)簽庫(kù)(JSTL)    140
          5.7.1  如何使用JSTL    141
          5.7.2  條件標(biāo)簽    142
          5.7.3  循環(huán)標(biāo)簽    144
          5.8  小結(jié)    147
          第6章  用Servlet和JSP實(shí)現(xiàn)注冊(cè)登錄系統(tǒng)    148
          6.1  系統(tǒng)概述    148
          6.1.1  系統(tǒng)功能簡(jiǎn)介    148
          6.1.2  系統(tǒng)總體結(jié)構(gòu)    149
          6.2  設(shè)計(jì)數(shù)據(jù)庫(kù)    149
          6.3  實(shí)現(xiàn)系統(tǒng)的基礎(chǔ)類    150
          6.3.1  實(shí)現(xiàn)訪問(wèn)數(shù)據(jù)庫(kù)的DBServlet類    150
          6.3.2  實(shí)現(xiàn)MD5加密    152
          6.3.3  實(shí)現(xiàn)圖形驗(yàn)證碼    152
          6.4  實(shí)現(xiàn)注冊(cè)系統(tǒng)    155
          6.4.1  實(shí)現(xiàn)注冊(cè)Servlet類    155
          6.4.2  實(shí)現(xiàn)注冊(cè)系統(tǒng)的主頁(yè)面    157
          6.4.3  實(shí)現(xiàn)結(jié)果JSP頁(yè)面    159
          6.5  實(shí)現(xiàn)登錄系統(tǒng)    160
          6.5.1  實(shí)現(xiàn)登錄Servlet    160
          6.5.2  實(shí)現(xiàn)登錄系統(tǒng)主頁(yè)面    162
          6.6  小結(jié)    163
          第2篇  Struts 2篇
          第7章  編寫(xiě)Struts 2的第一個(gè)程序    166
          7.1  Struts 2中的MVC模式    166
          7.2  Struts 2的體系結(jié)構(gòu)    167
          7.2.1  Struts 2的工作流程    167
          7.2.2  Struts 2的配置文件    167
          7.2.3  Struts 2的控制器    169
          7.3  實(shí)例:圖書(shū)查詢系統(tǒng)    170
          7.3.1  下載和安裝Struts 2    170
          7.3.2  編寫(xiě)數(shù)據(jù)處理類    171
          7.3.3  編寫(xiě)和配置Action類    172
          7.3.4  編寫(xiě)顯示查詢結(jié)果的JSP頁(yè)面    174
          7.3.5  編寫(xiě)輸入查詢信息的JSP頁(yè)面    176
          7.4  小結(jié)    177
          第8章  Struts 2進(jìn)階    178
          8.1  Struts 2的基本配置    178
          8.1.1  配置web.xml    178
          8.1.2  配置struts.xml    179
          8.1.3  配置struts.properties    183
          8.1.4  Struts 2的DTD    186
          8.2  深入理解Struts 2的配置元素    188
          8.2.1  配置Bean    188
          8.2.2  配置常量(constant)    190
          8.2.3  配置包含(include)    191
          8.2.4  配置包(package)    192
          8.2.5  配置命名空間    193
          8.2.6  配置攔截器    194
          8.3  Struts 2注釋(Annotation)    195
          8.3.1  ParentPackage注釋:設(shè)置當(dāng)前包的父包    195
          8.3.2  Namespace注釋:指定當(dāng)前包的命名空間    196
          8.3.3  Results與Result注釋:指定當(dāng)前Action結(jié)果    197
          8.3.4  實(shí)例:用注釋配置Action    197
          8.4  Struts 2的Action    200
          8.4.1  Action類的getter和setter方法    200
          8.4.2  實(shí)現(xiàn)Action接口    202
          8.4.3  繼承ActionSupport類    203
          8.4.4  實(shí)例:用ActionContext訪問(wèn)Servlet API    205
          8.4.5  實(shí)例:通過(guò)aware攔截器訪問(wèn)Servlet API    209
          8.4.6  實(shí)例:利用動(dòng)態(tài)方法處理多個(gè)提交請(qǐng)求    211
          8.4.7  實(shí)例:利用method屬性處理多個(gè)提交請(qǐng)求    213
          8.4.8  使用通配符    214
          8.4.9  默認(rèn)Action    218
          8.5  處理結(jié)果    218
          8.5.1  配置結(jié)果    218
          8.5.2  Struts 2支持的處理結(jié)果類型    219
          8.5.3  用通配符指定結(jié)果    222
          8.5.4  用請(qǐng)求參數(shù)指定結(jié)果    223
          8.6  模型驅(qū)動(dòng)    224
          8.6.1  ModelDriven概述    224
          8.6.2  實(shí)例:使用模型驅(qū)動(dòng)改進(jìn)登錄程序    226
          8.7  處理異常    228
          8.7.1  Struts 2處理異常的原理    229
          8.7.2  實(shí)例:登錄系統(tǒng)的異常處理    230
          8.8  小結(jié)    233
          第9章  Struts 2的攔截器    234
          9.1  理解攔截器    234
          9.1.1  攔截器的實(shí)現(xiàn)原理    234
          9.1.2  實(shí)例:模擬Struts 2實(shí)現(xiàn)一個(gè)攔截器系統(tǒng)    237
          9.2  配置Struts 2攔截器    242
          9.2.1  配置攔截器    242
          9.2.2  使用攔截器    244
          9.2.3  默認(rèn)攔截器    245
          9.3  實(shí)例:自定義攔截器    247
          9.3.1  編寫(xiě)攔截器類    247
          9.3.2  配置自定義攔截器    249
          9.4  攔截器的高級(jí)技術(shù)    251
          9.4.1  過(guò)濾指定的方法    251
          9.4.2  攔截器執(zhí)行順序    254
          9.4.3  攔截器結(jié)果監(jiān)聽(tīng)器    255
          9.5  Struts 2內(nèi)建的攔截器    258
          9.5.1  內(nèi)建攔截器    258
          9.5.2  內(nèi)建攔截器的配置    260
          9.6  實(shí)例:編寫(xiě)權(quán)限驗(yàn)證攔截器    262
          9.6.1  編寫(xiě)權(quán)限驗(yàn)證攔截器類    263
          9.6.2  配置權(quán)限控制攔截器    263
          9.7  小結(jié)    265
          第10章  Struts 2的類型轉(zhuǎn)換    266
          10.1  為什么要進(jìn)行類型轉(zhuǎn)換    266
          10.1.1  客戶端和服務(wù)端之間的數(shù)據(jù)處理過(guò)程    266
          10.1.2  傳統(tǒng)的類型轉(zhuǎn)換    267
          10.2  使用Struts 2類型轉(zhuǎn)換器    270
          10.2.1  Struts 2內(nèi)建的類型轉(zhuǎn)換器    271
          10.2.2  實(shí)例:實(shí)現(xiàn)基于OGNL的類型轉(zhuǎn)換器    274
          10.2.3  配置全局類型轉(zhuǎn)換器    278
          10.2.4  實(shí)例:實(shí)現(xiàn)基于Struts 2的類型轉(zhuǎn)換器    280
          10.2.5  實(shí)例:實(shí)現(xiàn)數(shù)組類型轉(zhuǎn)換器    282
          10.2.6  實(shí)例:實(shí)現(xiàn)集合類型轉(zhuǎn)換器    284
          10.3  實(shí)例:使用OGNL表達(dá)式進(jìn)行類型轉(zhuǎn)換    287
          10.4  Struts 2對(duì)Collection和Map的支持    289
          10.4.1  指定集合元素的類型    289
          10.4.2  Set和索引屬性    291
          10.5  類型轉(zhuǎn)換的錯(cuò)誤處理    292
          10.6  小結(jié)    294
          第11章  Struts 2的輸入校驗(yàn)    295
          11.1  傳統(tǒng)的數(shù)據(jù)校驗(yàn)方法    295
          11.1.1  用JavaScript進(jìn)行客戶端校驗(yàn)    295
          11.1.2  手工進(jìn)行服務(wù)端校驗(yàn)    300
          11.2  Struts 2的數(shù)據(jù)校驗(yàn)    303
          11.2.1  Struts 2使用validate方法校驗(yàn)數(shù)據(jù)的原理    303
          11.2.2  實(shí)例:使用validate方法進(jìn)行輸入校驗(yàn)    305
          11.2.3  實(shí)例:使用validateXxx方法進(jìn)行輸入校驗(yàn)    308
          11.2.4  Struts 2的輸入校驗(yàn)流程    311
          11.3  使用Validation框架進(jìn)行輸入校驗(yàn)    312
          11.3.1  實(shí)例:服務(wù)端校驗(yàn)    313
          11.3.2  字段校驗(yàn)器和非字段校驗(yàn)器    315
          11.3.3  國(guó)際化錯(cuò)誤提示信息    317
          11.3.4  實(shí)例:客戶端校驗(yàn)    319
          11.3.5  校驗(yàn)文件的命名規(guī)則    323
          11.3.6  短路校驗(yàn)器    325
          11.4  Validation框架的內(nèi)建校驗(yàn)器    327
          11.4.1  注冊(cè)和引用校驗(yàn)器    327
          11.4.2  轉(zhuǎn)換(conversion)校驗(yàn)器    328
          11.4.3  日期(date)校驗(yàn)器    329
          11.4.4  雙精度浮點(diǎn)數(shù)(double)校驗(yàn)器    330
          11.4.5  郵件地址(email)校驗(yàn)器    331
          11.4.6  表達(dá)式(expression)校驗(yàn)器    332
          11.4.7  字段表達(dá)式(fieldexpression)校驗(yàn)器    332
          11.4.8  整數(shù)(int)校驗(yàn)器    333
          11.4.9  正則表達(dá)式(regex)校驗(yàn)器    334
          11.4.10  必填(required)校驗(yàn)器    335
          11.4.11  必填字符串(requiredstring)校驗(yàn)器    335
          11.4.12  字符串長(zhǎng)度(stringlength)校驗(yàn)器    336
          11.4.13  網(wǎng)址(url)校驗(yàn)器    337
          11.4.14  visitor校驗(yàn)器    337
          11.5  小結(jié)    341
          第12章  文件的上傳和下載    342
          12.1  文件上傳原理    342
          12.1.1  表單數(shù)據(jù)的編碼方式    342
          12.1.2  applicaiton/x-www.form-urlencoded編碼方式    343
          12.1.3  multipart/form-data編碼方式    345
          12.2  使用Commons-FileUpload上傳文件    348
          12.2.1  下載和安裝Commons-FileUpload組件    348
          12.2.2  實(shí)例:上傳單個(gè)文件    349
          12.2.3  實(shí)例:上傳任意多個(gè)文件    352
          12.3  實(shí)例:Struts 2的文件上傳    355
          12.3.1  Struts 2對(duì)上傳文件的支持    355
          12.3.2  編寫(xiě)上傳文件的JSP頁(yè)    355
          12.3.3  編寫(xiě)上傳文件的Action類    356
          12.3.4  配置上傳文件的Action類    358
          12.3.5  手工過(guò)濾上傳文件的類型    359
          12.3.6  用fileUpload攔截器過(guò)濾上傳文件的類型    361
          12.4  在Struts 2中上傳多個(gè)文件    363
          12.4.1  實(shí)例:用數(shù)組上傳固定數(shù)目的文件    363
          12.4.2  實(shí)例:用List上傳任意數(shù)目的文件    366
          12.5  文件下載    368
          12.5.1  下載文件的中文問(wèn)題    368
          12.5.2  用stream結(jié)果下載文件    369
          12.5.3  下載文件的授權(quán)控制    371
          12.6  小結(jié)    372
          第13章  國(guó)際化    373
          13.1  國(guó)際化基礎(chǔ)    373
          13.1.1  程序?yàn)槭裁葱枰獓?guó)際化    373
          13.1.2  Java國(guó)際化中的資源文件    374
          13.1.3  Java支持的語(yǔ)言和國(guó)家    375
          13.1.4  資源文件的中文支持    376
          13.1.5  編寫(xiě)國(guó)際化程序    377
          13.1.6  帶占位符的國(guó)際化信息    379
          13.1.7  實(shí)例:使用資源文件編寫(xiě)國(guó)際化程序    380
          13.1.8  Java國(guó)際化中的資源類    383
          13.1.9  實(shí)例:使用資源類編寫(xiě)國(guó)際化程序    384
          13.2  Struts 2的國(guó)際化基礎(chǔ)    385
          13.2.1  Struts 2中的全局資源文件    386
          13.2.2  在Struts 2中訪問(wèn)國(guó)際化信息    386
          13.2.3  在Struts 2中輸出帶占位符的國(guó)際化信息    389
          13.3  資源文件的作用范圍和加載順序    391
          13.3.1  包范圍資源文件    391
          13.3.2  接口范圍資源文件    393
          13.3.3  Action基類范圍資源文件    395
          13.3.3  Action范圍資源文件    396
          13.3.5  臨時(shí)資源文件    397
          13.3.6  加載資源文件的順序    398
          13.4  實(shí)例:編寫(xiě)支持多國(guó)語(yǔ)言的Web應(yīng)用程序    399
          13.4.1  通過(guò)i18n攔截器實(shí)現(xiàn)國(guó)際化    400
          13.4.2  為register.jsp頁(yè)面增加語(yǔ)言選擇列表    401
          13.4.3  將register.jsp頁(yè)面映射成Action    402
          13.5  小結(jié)    404
          第14章  Struts 2的標(biāo)簽庫(kù)    405
          14.1  Struts 2標(biāo)簽基礎(chǔ)    405
          14.1.1  Struts 2標(biāo)簽的分類    405
          14.1.2  使用Struts 2標(biāo)簽    406
          14.1.3  Struts 2中的OGNL表達(dá)式    408
          14.1.4  用OGNL表達(dá)式訪問(wèn)內(nèi)置對(duì)象    411
          14.1.5  用OGNL表達(dá)式操作集合    412
          14.1.6  Lamdba(λ)表達(dá)式    414
          14.2  控制標(biāo)簽    415
          14.2.1  if/elseif/else標(biāo)簽:條件邏輯控制    415
          14.2.2  iterator標(biāo)簽:數(shù)組、集合迭代    418
          14.2.3  append標(biāo)簽:將集合以追加方式合并為新集合    422
          14.2.4  generator標(biāo)簽:將字符串分割成多個(gè)子串    424
          14.2.5  merge標(biāo)簽:將集合以交替方式合并為新集合    427
          14.2.6  subset標(biāo)簽:獲得集合的子集    428
          14.2.7  sort標(biāo)簽:對(duì)集合進(jìn)行排序    430
          14.3  數(shù)據(jù)標(biāo)簽    432
          14.3.1  action標(biāo)簽:在JSP頁(yè)面中直接訪問(wèn)Action    432
          14.3.2  bean標(biāo)簽:創(chuàng)建JavaBean的對(duì)象實(shí)例    434
          14.3.3  date標(biāo)簽:格式化日期/時(shí)間    436
          14.3.4  debug標(biāo)簽:顯示調(diào)試信息    438
          14.3.5  include標(biāo)簽:包含Web資源    439
          14.3.6  param標(biāo)簽:為其他的標(biāo)簽提供參數(shù)    440
          14.3.7  property標(biāo)簽:輸出指定的值    440
          14.3.8  push標(biāo)簽:將指定值放到ValueStack棧頂    441
          14.3.9  set標(biāo)簽:將某個(gè)值保存在指定的范圍    442
          14.3.10  url標(biāo)簽:生成URL地址    444
          14.4  表單標(biāo)簽    446
          14.4.1  表單標(biāo)簽的通用屬性    446
          14.4.2  表單標(biāo)簽的name和value屬性    447
          14.4.3  form、submit和reset標(biāo)簽:表單、提交和重置    449
          14.4.4  checkboxlist標(biāo)簽:生成多個(gè)復(fù)選框    449
          14.4.5  combobox標(biāo)簽:組合單行文本框和下拉列表框    452
          14.4.6  datetimespicker標(biāo)簽:組合文本框和日期、時(shí)間選擇框    454
          14.4.7  doubleselect標(biāo)簽:生成級(jí)聯(lián)列表框    457
          14.4.8  head標(biāo)簽:添加CSS和JavaScript    458
          14.4.9  optiontransferselect 標(biāo)簽:生成可交互的兩個(gè)列表框    459
          14.4.10  select標(biāo)簽:生成列表框    461
          14.4.11  optgroup標(biāo)簽:生成下拉列表框選項(xiàng)組    462
          14.4.12  radio標(biāo)簽:生成多個(gè)單選框    463
          14.4.13  token標(biāo)簽:防止多次提交表單    464
          14.4.14  updownselect標(biāo)簽:生成高級(jí)列表框    465
          14.4.15  其他的表單標(biāo)簽    467
          14.5  非表單標(biāo)簽    467
          14.5.1  fielderror標(biāo)簽:顯示字段錯(cuò)誤信息    467
          14.5.2  actionerror和actionmessage標(biāo)簽:顯示動(dòng)作錯(cuò)誤和動(dòng)作消息    468
          14.5.3  component標(biāo)簽:使用模板    469
          14.6  小結(jié)    471
          第15章  Struts 2對(duì)AJAX的支持    472
          15.1  Struts 2的AJAX主題    472
          15.2  基于AJAX的輸入校驗(yàn)    474
          15.2.1  下載和安裝DWR框架    474
          15.2.2  編寫(xiě)具有AJAX校驗(yàn)功能的注冊(cè)頁(yè)面    475
          15.2.3  編寫(xiě)Action類    476
          15.2.4  設(shè)置校驗(yàn)規(guī)則    477
          15.3  在表單中使用AJAX    479
          15.3.1  實(shí)現(xiàn)可異步提交的表單    479
          15.3.2  實(shí)現(xiàn)Action類    479
          15.3.3  實(shí)現(xiàn)結(jié)果處理頁(yè)面    480
          15.3.4  執(zhí)行JavaScript代碼    481
          15.4  發(fā)布-訂閱(pub-sub)事件模型    483
          15.4.1  pub-sub事件模型的原理    483
          15.4.2  pub-sub事件模型演示    484
          15.4.3  阻止請(qǐng)求服務(wù)端資源    487
          15.5  使用Struts 2中的AJAX標(biāo)簽    488
          15.5.1  div標(biāo)簽的基本應(yīng)用    488
          15.5.2  使用div標(biāo)簽執(zhí)行JavaScript    491
          15.5.3  手動(dòng)控制div標(biāo)簽的更新    493
          15.5.4  submit標(biāo)簽:發(fā)送異步請(qǐng)求    496
          15.5.5  a標(biāo)簽:可異步提交請(qǐng)求的鏈接    498
          15.5.6  autocompleter標(biāo)簽:帶自運(yùn)完成功能的文本框    501
          15.5.7  tabbedPanel標(biāo)簽:生成Tab頁(yè)    507
          15.5.8  treenode和tree標(biāo)簽:樹(shù)節(jié)點(diǎn)和樹(shù)組件    511
          15.6  使用JSON插件實(shí)現(xiàn)AJAX    513
          15.6.1  下載和安裝JSON插件    513
          15.6.2  下載和安裝prototype.js    513
          15.6.3  實(shí)現(xiàn)Action類    514
          15.6.4  在JSP頁(yè)面中通過(guò)Prototype請(qǐng)求Action    515
          15.7  小結(jié)    517
          第16章  用Struts 2實(shí)現(xiàn)注冊(cè)登錄系統(tǒng)    518
          16.1  系統(tǒng)總體結(jié)構(gòu)    518
          16.2  實(shí)現(xiàn)DAO層    518
          16.2.1  實(shí)現(xiàn)DAOSupport類    519
          16.2.2  實(shí)現(xiàn)UserDAO接口    520
          16.2.3  實(shí)現(xiàn)UserDAOImpl類    520
          16.3  實(shí)現(xiàn)Action類    522
          16.3.1  實(shí)現(xiàn)模型類(User)    522
          16.3.2  實(shí)現(xiàn)LoginAction類    523
          16.3.3  實(shí)現(xiàn)RegisterAction類    525
          16.4  輸入校驗(yàn)    526
          16.4.1  校驗(yàn)登錄頁(yè)面    526
          16.4.2  校驗(yàn)注冊(cè)頁(yè)面    527
          16.5  實(shí)現(xiàn)表現(xiàn)層頁(yè)面    528
          16.5.1  實(shí)現(xiàn)登錄頁(yè)面(login.jsp)    528
          16.5.2  實(shí)現(xiàn)注冊(cè)頁(yè)面(register.jsp)    530
          16.5.3  實(shí)現(xiàn)主頁(yè)面(main.jsp)    531
          16.6  實(shí)現(xiàn)其他的功能    532
          16.6.1  使用Action類生成驗(yàn)證碼圖像    532
          16.6.2  使用攔截器驗(yàn)證頁(yè)面訪問(wèn)權(quán)限    534
          16.7  小結(jié)    536
          第3篇  Hibernate篇
          第17章  Hibernate的Helloworld程序    538
          17.1  Hibernate概述    538
          17.1.1  為什么要使用ORM    538
          17.1.2  Hibernate和EJB的關(guān)系    539
          17.2  在應(yīng)用程序中使用Hibernate 3    539
          17.2.1  MyEclipse對(duì)Hibernate 3的支持    540
          17.2.2  下載和安裝新版本的Hibernate 3    542
          17.3  第1個(gè)Hibernate程序    543
          17.3.1  開(kāi)發(fā)Hibernate程序的基本步驟    543
          17.3.2  建立數(shù)據(jù)表    543
          17.3.3  建立Hibernate配置文件    543
          17.3.4  建立會(huì)話工廠(SessionFactory)類    544
          17.3.5  建立實(shí)體Bean和Struts 2的模型類    547
          17.3.6  建立映射文件    548
          17.3.7  建立添加記錄的Action類    548
          17.3.8  建立錄入信息的JSP頁(yè)面    550
          17.4  小結(jié)    552
          第18章  配置Hibernate    553
          18.1  用傳統(tǒng)的方法配置Hibernate    553
          18.1.1  用XML文件配置Hibernate    553
          18.1.2  用屬性文件配置Hibernate    556
          18.1.3  用編程的方式配置Hibernate    556
          18.1.4  Hibernate框架的配置屬性    557
          18.1.5  SQL方言(Dialect)    561
          18.1.6  使用JNDI數(shù)據(jù)源    562
          18.1.7  配置映射文件    563
          18.2  使用注釋(Annotations)配置Hibernate    564
          18.2.1  Hibernate注釋簡(jiǎn)介    564
          18.2.2  安裝Hibernate注釋    564
          18.2.3  使用@Entity注釋實(shí)體Bean    565
          18.2.4  使用@Table注釋實(shí)體Bean    565
          18.2.5  使用@Id注釋主鍵    566
          18.2.6  使用@GenericGenerator注釋產(chǎn)生主鍵值    567
          18.2.7  使用@Basic和@Transient注釋    568
          18.2.8  更高級(jí)的Hibernate注釋    568
          18.3  使用注釋重新實(shí)現(xiàn)Helloworld程序    569
          18.3.1  使用注釋配置實(shí)體Bean    569
          18.3.2  在Hibernate配置文件中指定實(shí)體Bean的位置    570
          18.3.3  使用AnnotationConfiguration類處理annotation.cfg.xml文件    570
          18.3.4  通過(guò)AnnotationSessionFactory類獲得Session對(duì)象    571
          18.4  小結(jié)    572
          第19章  Hibernate的會(huì)話與O/R映射    573
          19.1  會(huì)話(Session)的基本應(yīng)用    573
          19.1.1  保存持久化對(duì)象    573
          19.1.2  判斷持久化對(duì)象之間的關(guān)系    574
          19.1.3  裝載持久化對(duì)象    575
          19.1.4  刷新持久化對(duì)象    577
          19.1.5  更新持久化對(duì)象    578
          19.1.6  刪除持久化對(duì)象    579
          19.2  建立O/R映射    579
          19.2.1  映射主鍵    579
          19.2.2  映射復(fù)合主鍵    580
          19.2.3  實(shí)例:主鍵和復(fù)合主鍵的查詢和更新    581
          19.2.4  映射普通屬性    586
          19.2.5  建立組件(Component)映射    587
          19.2.6  實(shí)例:組件映射的應(yīng)用    588
          19.2.7  基于注釋的組件映射    592
          19.2.8  建立多對(duì)一(many-to-one)單向關(guān)聯(lián)關(guān)系    593
          19.2.9  實(shí)例:多對(duì)一關(guān)系的演示    593
          19.2.10  基于注釋的多對(duì)一關(guān)系映射    597
          19.2.11  建立一對(duì)多(one-to-many)的雙向關(guān)聯(lián)關(guān)系    598
          19.2.12  實(shí)例:一對(duì)多雙向關(guān)聯(lián)的演示    598
          19.2.13  基于注釋的一對(duì)多映射    601
          19.2.14  建立基于外鍵的一對(duì)一(one-to-one)的關(guān)系映射    602
          19.2.15  實(shí)例:基于外鍵的一對(duì)一關(guān)系演示    603
          19.2.16  建立基于主鍵的一對(duì)一的關(guān)系映射    606
          19.2.17  實(shí)例:基于主鍵的一對(duì)一關(guān)系映射    607
          19.3  小結(jié)    610
          第20章  Hibernate的查詢與更新技術(shù)    612
          20.1  標(biāo)準(zhǔn)(Criteria)查詢API    612
          20.1.1  實(shí)例:一個(gè)簡(jiǎn)單的例子    612
          20.1.2  查詢的約束條件    613
          20.1.3  對(duì)查詢結(jié)果進(jìn)行分頁(yè)    615
          20.1.4  實(shí)例:實(shí)現(xiàn)Web分頁(yè)功能    617
          20.1.5  只獲得一個(gè)持久化對(duì)象    620
          20.1.6  對(duì)查詢結(jié)果進(jìn)行排序    621
          20.1.7  多個(gè)Criteria之間的關(guān)聯(lián)    621
          20.1.8  聚合和分組    622
          20.1.9  使用QBE(Query By Example)    624
          20.2  HQL和SQL技術(shù)    625
          20.2.1  實(shí)例:使用HQL的第一個(gè)例子    625
          20.2.2  From子句:簡(jiǎn)化實(shí)體Bean類名    626
          20.2.3  Select子句:選擇返回屬性    628
          20.2.4  Where子句:指定條件    629
          20.2.5  使用命名參數(shù)    630
          20.2.6  使用Query進(jìn)行分頁(yè)    631
          20.2.7  實(shí)例:使用HQL實(shí)現(xiàn)Web分頁(yè)功能    631
          20.2.8  使用HQL進(jìn)行排序和分組    632
          20.2.9  關(guān)聯(lián)查詢    633
          20.2.10  聚合函數(shù)    635
          20.2.11  Update和Delete語(yǔ)句:更新持久化對(duì)象    636
          20.2.12  Insert語(yǔ)句:插入記錄    637
          20.2.13  命名查詢    638
          20.2.14  使用SQL    639
          20.3  小結(jié)    640
          第21章  Hibernate的高級(jí)技術(shù)    641
          21.1  事務(wù)管理    641
          21.1.1  事務(wù)概述    641
          21.1.2  事務(wù)的隔離等級(jí)    642
          21.1.3  Hibernate的事務(wù)管理    643
          21.1.4  基于JDBC的事務(wù)管理    643
          21.1.5  基于JTA的事務(wù)管理    644
          21.2  鎖(Locking)    644
          21.2.1  悲觀鎖(Pessimistic Locking)    644
          21.2.2  樂(lè)觀鎖(Optimistic Locking)    646
          21.3  查詢緩存(Query Cache)    648
          21.4  攔截器和事件    649
          21.4.1  攔截器(Interceptors)概述    649
          21.4.2  實(shí)例:編寫(xiě)一個(gè)Hibernate攔截器    649
          21.4.3  事件(Events)概述    653
          21.4.4  實(shí)例:編寫(xiě)和注冊(cè)事件類    654
          21.5  過(guò)濾器    656
          21.6  小結(jié)    657
          第4篇  Spring篇
          第22章  Spring的Helloworld程序    660
          22.1  Spring簡(jiǎn)介    660
          22.1.1  Spring的主要特性    660
          22.1.2  Spring的核心技術(shù)    661
          22.2  在應(yīng)用程序中使用Spring    662
          22.2.1  MyEclipse 6.5對(duì)Spring的支持    662
          22.2.2  下載和安裝Spring    663
          22.3  實(shí)例:開(kāi)發(fā)一個(gè)Helloworld程序    664
          22.3.1   編寫(xiě)HelloService接口    664
          22.3.2   編寫(xiě)HelloServiceImpl類    664
          22.3.3   裝配HelloServiceImpl類    665
          22.3.4   通過(guò)裝配Bean的方式獲得HelloService對(duì)象    665
          22.4  小結(jié)    666
          第23章  反向控制(Ioc)與裝配JavaBean    667
          23.1  反向控制(Ioc)    667
          23.1.1  什么是依賴注入    667
          23.1.2  傳統(tǒng)解決方案的缺陷    668
          23.1.3  用Ioc降低耦合度    669
          23.2  手動(dòng)裝配JavaBean    670
          23.2.1  裝配Bean的方法    670
          23.2.2  與Bean相關(guān)的接口    671
          23.2.3  <bean>標(biāo)簽的常用屬性    672
          23.2.4  裝配普通屬性    673
          23.2.5  裝配集合屬性    676
          23.2.6  設(shè)置屬性值為null    680
          23.2.7  裝配構(gòu)造方法    680
          23.3  自動(dòng)裝配JavaBean    683
          23.4  分散配置    685
          23.5  定制屬性編輯器    687
          23.6  小結(jié)    690
          第24章  Spring中的數(shù)據(jù)庫(kù)技術(shù)    691
          24.1  獲得DataSource    691
          24.1.1  通過(guò)JNDI獲得DataSource    691
          24.1.2  從第三方的連接池獲得DataSource    692
          24.1.3  使用DriverManagerDataSource    693
          24.2  在Spring中使用JDBC    693
          24.2.1  裝配JdbcTemplate類    693
          24.2.2  向數(shù)據(jù)庫(kù)中寫(xiě)數(shù)據(jù)    694
          24.2.3  從數(shù)據(jù)庫(kù)中讀數(shù)據(jù)    696
          24.2.4  調(diào)用存儲(chǔ)過(guò)程    699
          24.3  自增鍵    700
          24.4  異常處理    701
          24.5  在Spring中使用Hibernate    702
          24.5.1  集成Spring和Hibernate    702
          24.5.2  使用HibernateTemplate    703
          24.6  小結(jié)    705
          第25章  Spring的其他高級(jí)技術(shù)    706
          25.1  Spring AOP    706
          25.1.1  AOP概述    706
          25.1.2  AOP術(shù)語(yǔ)簡(jiǎn)介    707
          25.1.3  4種通知(Advice)的作用    708
          25.1.4  通過(guò)Advisor指定切入點(diǎn)    714
          25.1.5  使用控制流切入點(diǎn)    716
          25.2  Spring 的事務(wù)管理    718
          25.2.1  實(shí)例:使用程序控制事務(wù)    718
          25.2.2  聲明式事務(wù)    720
          25.2.3  事務(wù)屬性的種類    722
          25.2.4  設(shè)置事務(wù)屬性    724
          25.2.5  設(shè)置特定方法的事務(wù)屬性    725
          25.3  實(shí)例:建立和訪問(wèn)RMI服務(wù)    727
          25.4  實(shí)例:發(fā)送E-mail    729
          25.5  調(diào)度任務(wù)    731
          25.6  小結(jié)    732
          第5篇  綜合實(shí)例篇
          第26章  Struts 2與Hibernate、Spring的整合    734
          26.1  整合Struts 2和Hibernate框架    734
          26.1.1  整合的思路    734
          26.1.2  整合后的系統(tǒng)層次    735
          26.1.3  實(shí)現(xiàn)數(shù)據(jù)訪問(wèn)層    735
          26.1.4  實(shí)現(xiàn)業(yè)務(wù)邏輯層    737
          26.1.5  Struts 2和Hibernate共享實(shí)體Bean    739
          26.2  整合Spring框架    740
          26.2.1  裝配數(shù)據(jù)訪問(wèn)層    740
          26.2.2  裝配業(yè)務(wù)邏輯層    742
          26.2.3  使用Struts 2的Spring插件    742
          26.3  小結(jié)    743
          第27章  網(wǎng)絡(luò)硬盤(pán)    744
          27.1  系統(tǒng)概述    744
          27.1.1  系統(tǒng)功能簡(jiǎn)介    744
          27.1.2  系統(tǒng)架構(gòu)設(shè)計(jì)    746
          27.2  數(shù)據(jù)庫(kù)設(shè)計(jì)    746
          27.3  實(shí)現(xiàn)持久對(duì)象層    748
          27.3.1  實(shí)現(xiàn)用戶實(shí)體Bean    749
          27.3.2  實(shí)現(xiàn)目錄實(shí)體Bean    750
          27.3.3  實(shí)現(xiàn)文件實(shí)體Bean    751
          27.3.4  映射MySQL存儲(chǔ)過(guò)程    752
          27.3.5  配置hibernate.cfg.xml    753
          27.4  實(shí)現(xiàn)數(shù)據(jù)訪問(wèn)層    754
          27.4.1  實(shí)現(xiàn)DAOSupport類    754
          27.4.2  實(shí)現(xiàn)UserDAO接口和UserDAOImpl類    754
          27.4.3  實(shí)現(xiàn)DirectoryDAO接口和DirectoryDAOImpl類    755
          27.4.4  實(shí)現(xiàn)FileDAO接口和FileDAOImpl類    757
          27.5  實(shí)現(xiàn)業(yè)務(wù)邏輯層    758
          27.5.1  實(shí)現(xiàn)UserService接口和UserServiceImpl類    758
          27.5.2  實(shí)現(xiàn)DirectoryService接口和DirectoryServiceImpl類    760
          27.5.3  實(shí)現(xiàn)FileService接口和FileServiceImpl類    762
          27.5.4  實(shí)現(xiàn)服務(wù)管理類    764
          27.5.5  配置Spring    765
          27.6  實(shí)現(xiàn)Web表現(xiàn)層    767
          27.6.1  實(shí)現(xiàn)基礎(chǔ)動(dòng)作類(BaseAction)    768
          27.6.2  實(shí)現(xiàn)用戶登錄頁(yè)面和處理登錄的Action類    769
          27.6.3  實(shí)現(xiàn)注冊(cè)登錄頁(yè)面和處理注冊(cè)的Action類    771
          27.6.4  實(shí)現(xiàn)網(wǎng)絡(luò)硬盤(pán)主頁(yè)面    771
          27.6.5  建立目錄    773
          27.6.6  實(shí)現(xiàn)文件上傳    774
          27.6.7  實(shí)現(xiàn)文件和目錄下載    775
          27.6.8  使用攔截器控制頁(yè)面訪問(wèn)權(quán)限    779
          27.6.9  其他功能的實(shí)現(xiàn)    780
          27.7  小結(jié)    780
          第28章  論壇系統(tǒng)    782
          28.1  系統(tǒng)功能簡(jiǎn)介    782
          28.2  數(shù)據(jù)庫(kù)設(shè)計(jì)    783
          28.3  實(shí)現(xiàn)持久對(duì)象層    785
          28.3.1  實(shí)現(xiàn)主題實(shí)體Bean    785
          28.3.2  實(shí)現(xiàn)回復(fù)實(shí)體Bean    787
          28.3.3  配置hibernate.cfg.xml    788
          28.4  實(shí)現(xiàn)數(shù)據(jù)訪問(wèn)層    788
          28.4.1  實(shí)現(xiàn)TopicDAO接口和TopicDAOImpl類    789
          28.4.2  實(shí)現(xiàn)ReviewDAO接口和ReviewDAOImpl類    790
          28.5  實(shí)現(xiàn)業(yè)務(wù)邏輯層    791
          28.5.1  實(shí)現(xiàn)TopicService接口和TopicServiceImpl類    791
          28.5.2  實(shí)現(xiàn)ReviewService接口和ReviewServiceImpl類    793
          28.5.3  實(shí)現(xiàn)服務(wù)管理類    795
          28.5.4  配置Spring    795
          28.6  整合FCKEditor組件    796
          28.6.1  安裝FCKEditor    796
          28.6.2  配置FCKEditor    797
          28.6.3  修改FCKEditor自帶的Servlet    800
          28.6.4  產(chǎn)生FCKEditor的客戶端腳本    800
          28.7  實(shí)現(xiàn)Web表現(xiàn)層    801
          28.7.1  瀏覽論壇的主題列表    801
          28.7.2  發(fā)布新主題    804
          28.7.3  瀏覽主題和回復(fù)內(nèi)容    805
          28.7.4  回復(fù)主題    806
          28.8  小結(jié)    807





          Android開(kāi)發(fā)完全講義(第2版)(本書(shū)版權(quán)已輸出到臺(tái)灣)

          http://product.dangdang.com/product.aspx?product_id=22741502



          Android高薪之路:Android程序員面試寶典 http://book.360buy.com/10970314.html


          新浪微博:http://t.sina.com.cn/androidguy   昵稱:李寧_Lining

          posted on 2009-05-06 08:52 銀河使者 閱讀(5199) 評(píng)論(2)  編輯  收藏 所屬分類: 原創(chuàng) 圖書(shū)

          評(píng)論

          # re: 新書(shū)出版:Java Web開(kāi)發(fā)技術(shù)大全——JSP+Servlet+Struts+Hibernate+Spring+Ajax [未登錄](méi)  回復(fù)  更多評(píng)論   

          看起來(lái)很不錯(cuò),打算在當(dāng)當(dāng)買(mǎi)一本,了解了解
          2009-05-06 09:39 | EricFan

          # re: 新書(shū)出版:Java Web開(kāi)發(fā)技術(shù)大全——JSP+Servlet+Struts 2+Hibernate+Spring+Ajax   回復(fù)  更多評(píng)論   

          去書(shū)店拜讀一下
          2009-05-21 16:12 | 淘聲依舊
          主站蜘蛛池模板: 抚顺县| 杭锦后旗| 泾源县| 垣曲县| 霍城县| 铅山县| 旺苍县| 灵武市| 大余县| 桃江县| 田阳县| 澄城县| 开阳县| 涿州市| 星座| 镇雄县| 瑞丽市| 工布江达县| 三门县| 厦门市| 长春市| 陆川县| 龙江县| 马关县| 柳江县| 屯留县| 电白县| 延寿县| 普定县| 抚宁县| 治县。| 宕昌县| 临邑县| 府谷县| 陵川县| 朝阳市| 南京市| 无为县| 象山县| 灌云县| 康平县|