出版時間:2007-10 出版社:清華大學(xué)出版社 作者:羅會波 頁數(shù):552
Tag標簽:無
內(nèi)容概要
JSF是表示層框架的標準,Hibernate是一個比較完善的對象關(guān)系映射工具,Spring則提供了一個Web應(yīng)用的輕量級的解決方案。在開發(fā)一個多層的Java EE應(yīng)用程序時,這些框架可謂是相輔相成、相得益彰,可以稱得上是開發(fā)輕量級Java EE應(yīng)用的三劍客。另外,AJAX是一種非常流行的改善用戶體驗的技術(shù),但目前國內(nèi)外還沒有一本完整地介紹組合這三種框架及AJAX來開發(fā)應(yīng)用程序的書籍,本書是在這方面的一個嘗試?! ”緯敱M地介紹了JSF的基本結(jié)構(gòu)和工作原理、標簽、驗證與轉(zhuǎn)換、事件處理、國際化編程及IoC;對象關(guān)系映射的概念、Hibernate的結(jié)構(gòu)及與JSF的集成;Spring的結(jié)構(gòu)、AOP、Spring與JSF和Hibernate的集成;常用IDE(Eclipse和MyEclipse)的使用方法等內(nèi)容?! ”緯奶攸c主要是從編程實踐的角度來介紹這些框架的基本原理,以及用示例演示如何具體應(yīng)用這些框架來開發(fā)一個Web應(yīng)用程序。在介紹各種框架時,對涉及到的Web開發(fā)中容易遇到的疑難問題盡可能給出淺顯易懂的解釋,其目的是幫助想利用這些框架進行開發(fā)的人員盡快進入實戰(zhàn)狀態(tài)。
作者簡介
羅會波 高級工程師,IBM認證DB2數(shù)據(jù)庫系統(tǒng)管理員。早年從事中學(xué)物理教學(xué)工作,后在億利達(Elite)集團明泰R/D部(深圳)從事通信產(chǎn)品研發(fā)工作。1996年底進入稅務(wù)系統(tǒng)從事信息化工作至今?! ≡趦|利達工作期間開始接觸匯編語言編程;在稅務(wù)系統(tǒng)主持或參與了“湖北省國稅局納稅大廳Web查詢系統(tǒng)”、“全國稅務(wù)征管軟件Ctais納稅人查詢系統(tǒng)”等數(shù)個省局及市局稅務(wù)信息化項目的開發(fā)工作;參與了湖北省國稅局內(nèi)部教材《國稅系統(tǒng)辦公自動化實用指南》一書的編撰工作;曾在《計算機世界》、《電腦愛好者》及《電腦編輯技巧與維護》等報刊雜志及賽迪風(fēng)上發(fā)表過包括《Struts原理與實踐》系列講座(該系列曾長期占據(jù)賽迪網(wǎng)技術(shù)文章排行榜TOP10)在內(nèi)的多篇原創(chuàng)及翻譯的IT技術(shù)文章,文風(fēng)嚴謹,又不失幽默,受到廣大讀者的一致好評。
書籍目錄
第1章 為什么要學(xué)習(xí)框架及學(xué)習(xí)什么樣的框架 11.1 Java的發(fā)展與變化 11.1.1 版本與稱謂的變化 11.1.2 應(yīng)用程序開發(fā)方式的變遷 11.2 兩種形式的多層結(jié)構(gòu)的J2EE應(yīng)用程序 21.2.1 胖客戶端J2EE應(yīng)用程序 21.2.2 Web應(yīng)用程序 31.3 Web應(yīng)用的兩種實現(xiàn)方式 41.3.1 傳統(tǒng)的重量級實現(xiàn)方式 51.3.1.1 運行環(huán)境 51.3.1.2 EJB 51.3.1.3 其他特點 61.3.1.4 適應(yīng)的場合 61.3.2 方興未艾的輕量級實現(xiàn)方式 61.3.2.1 運行環(huán)境 71.3.2.2 POJO 71.3.2.3 其他特點 71.3.2.4 適應(yīng)場合 71.4 風(fēng)云際會的框架世界 71.4.1 框架的出現(xiàn)與流行 81.4.2 大器晚成展新顏——JSF 81.4.3 層林深處好冬眠——Hibernate 91.4.4 七音合奏春光曲——Spring 91.5 為什么是JSF而不是Struts 91.5.1 比Struts更高的抽象 91.5.2 早先暴露的缺陷不斷被彌補 111.5.2.1 解決了與JSP集成中的一些突出問題 111.5.2.2 統(tǒng)一表達式語言與JSTL迭代標簽的支持 111.5.2.3 其他新的特征 121.5.3 與客戶端技術(shù)的完美結(jié)合 121.5.3.1 可以借助JavaScript改善用戶體驗 121.5.3.2 可與AJAX無縫集成 12第2章 JSF與Web應(yīng)用程序 132.1 JSF的設(shè)計目標及與Web應(yīng)用的關(guān)系 132.2 Web應(yīng)用程序概覽 132.2.1 基本的Web組件 132.2.2 Web部署描述器文件 132.2.3 Web應(yīng)用程序的物理結(jié)構(gòu) 142.3 Web應(yīng)用程序的開發(fā)環(huán)境配置 142.3.1 Java 2 SDK的下載與安裝 142.3.2 Web容器的下載與安裝 152.3.3 環(huán)境變量的設(shè)置 162.3.4 其他準備工作 162.4 Servlet 182.4.1 Servlet的基本概念 182.4.2 Servlet的體系結(jié)構(gòu) 182.4.3 你的第一個Servlet應(yīng)用程序——Hello World 192.4.3.1 建立示例應(yīng)用目錄結(jié)構(gòu) 192.4.3.2 編寫Servlet類文件 192.4.3.3 編譯Servlet類文件 202.4.3.4 編寫部署描述器文件web.xml 202.4.3.5 部署與運行示例應(yīng)用 212.4.3.6 原理分析 222.4.4 Servlet的生命周期 222.4.4.1 初始化 232.4.4.2 處理請求 232.4.4.3 銷毀 242.4.5 Servlet的作用域?qū)ο?242.4.6 過濾請求與響應(yīng) 242.5 JSP 242.5.1 JSP如何表示靜態(tài)內(nèi)容 252.5.2 JSP如何表示動態(tài)內(nèi)容 252.5.3 JSP的注釋 252.5.3.1 HTML注釋 262.5.3.2 JSP注釋 262.5.4 JSP示例 262.5.4.1 建立應(yīng)用程序目錄 262.5.4.2 編寫JSP示例代碼 262.5.4.3 部署和運行JSP 262.5.5 JSP與Servlet的關(guān)系 272.5.5.1 JSP轉(zhuǎn)換為Servlet后執(zhí)行 272.5.5.2 JSP轉(zhuǎn)化后的Servlet的簡要分析 272.5.5.3 JSP為Servlet提供了模板機制 292.5.6 JSP的元素 292.5.6.1 指令 292.5.6.2 動作 302.5.6.3 腳本元素 302.5.7 JSP的標簽庫 322.5.7.1 標簽庫的組成 322.5.7.2 自定義標簽庫 332.5.7.3 JSP標準標簽庫 352.5.8 JSP的內(nèi)建對象 352.5.8.1 out 362.5.8.2 request 372.5.8.3 session 392.5.8.4 application 412.5.8.5 config 412.5.8.6 pageContext 412.5.8.7 page 412.5.8.8 response 412.5.8.9 exception 412.5.9 JSP中的異常處理 422.5.10 Web組件間的關(guān)聯(lián)關(guān)系 422.5.10.1 包含 422.5.10.2 請求轉(zhuǎn)發(fā) 432.5.10.3 重定向 452.5.11 JavaBean 452.5.11.1 JavaBean的概念 452.5.11.2 為什么要引入JavaBean 462.5.11.3 JavaBean的編碼約定 462.5.11.4 一個簡單的JavaBean 482.5.11.5 在JSP中使用JavaBean 502.5.12 JavaBean在JSP中的有效范圍 502.5.12.1 演示Page范圍的Bean 502.5.12.2 演示Request范圍的Bean 522.5.12.3 演示Session范圍的Bean 532.5.12.4 演示Application范圍的Bean 542.6 早期框架Struts 552.6.1 應(yīng)用程序的分層 552.6.2 表單的處理與驗證 552.6.3 類型轉(zhuǎn)換 562.6.4 導(dǎo)航 562.6.5 資源管理 562.6.6 國際化編程 562.6.7 異常處理的加強 562.6.8 模板的重用管理與布局 572.7 JSF 572.7.1 具有早期框架的一些特性 572.7.2 有狀態(tài)的用戶界面組件模型 572.7.3 用戶界面事件的服務(wù)器端的處理 582.7.4 自動生成各種標志語言 582.7.5 與業(yè)務(wù)對象的聲明式集成 58第3章 JSF應(yīng)用程序開發(fā)入門 593.1 JSF開發(fā)環(huán)境的配置 593.1.1 JSF參考實現(xiàn)的下載與安裝 593.1.2 ANT的下載與安裝 603.1.3 環(huán)境變量的設(shè)置 603.2 開發(fā)您的第一個JSF應(yīng)用程序 603.2.1 Hello World應(yīng)用程序的需求分析 613.2.2 應(yīng)用程序的目錄結(jié)構(gòu) 613.2.3 應(yīng)用程序的頁面文件 613.2.3.1 index.jsp 613.2.3.2 hello.jsp 623.2.3.3 howDoYouDo.jsp 653.2.3.4 howAreYou.jsp 663.2.4 應(yīng)用程序的Backing Bean 663.2.4.1 Backing Bean及其作用 663.2.4.2 示例中的Backing Bean類文件 673.2.4.3 Backing Bean的特點 693.2.5 JSF的配置文件faces-config.xml 693.2.5.1 示例應(yīng)用的導(dǎo)航規(guī)則 703.5.5.2 示例應(yīng)用的托管JavaBean配置 713.2.6 應(yīng)用程序的配置文件web.xml 713.2.7 手工編譯應(yīng)用程序 723.2.8 應(yīng)用程序上下文 733.2.9 建立應(yīng)用程序上下文及部署應(yīng)用程序 733.2.9.1 直接修改Tomcat的配置文件server.xml 733.2.9.2 使用Tomcat頁面形式的管理工具 733.2.10 運行應(yīng)用程序 743.3 用ANT工具構(gòu)建應(yīng)用程序 753.3.1 ANT工具簡介 753.3.2 創(chuàng)建build.xml文件 763.3.2.1 設(shè)置屬性 763.3.2.2 設(shè)置classpath 773.3.2.3 定義clean目標 773.3.2.4 定義prepare目標 773.3.2.5 定義deploy.copyJars目標 773.2.2.6 定義build目標 783.3.2.7 定義build.war目標 793.3.2.8 定義deploy目標 793.3.3 用ANT工具自動構(gòu)建和部署應(yīng)用程序 79第4章 JSF中的請求處理 804.1 JSF處理請求的基本過程 804.1.1 將請求映射到FacesServlet 804.1.2 FacesServlet類 804.1.3 獲得配置Servlet的配置信息 814.1.4 初始化時獲得Faces上下文工廠和生命周期實例 814.1.5 FacesServlet對請求的處理過程 814.1.5.1 獲得Faces上下文并用它處理當前請求 824.1.5.2 調(diào)用請求處理生命周期的execute()方法 824.1.5.3 調(diào)用請求處理生命周期的render()方法 824.1.5.4 釋放Faces上下文對象 834.1.5.5 與普通Servlet對請求處理的比較 834.1.6 處理完成后的資源釋放 834.2 Faces上下文 834.2.1 Faces上下文簡介 834.2.2 Faces上下文的主要方法 844.2.2.1 獲取應(yīng)用程序?qū)嵗?844.2.2.2 獲取外部上下文 844.2.2.3 獲取與設(shè)置視圖根 854.2.2.4 處理消息隊列 854.2.2.5 獲取呈現(xiàn)器工具包 864.2.2.6 流程控制方法 864.2.2.7 獲取表達式語言上下文 874.2.2.8 響應(yīng) 884.2.2.9 獲取Faces上下文的當前實例 884.3 請求處理的生命周期 884.3.1 獲得生命周期對象 884.3.2 生命周期的場景 894.3.2.1 非Faces請求生成Faces響應(yīng) 894.3.2.2 Faces請求生成非Faces響應(yīng) 904.3.2.3 Faces請求生成Faces響應(yīng) 904.3.3 標準的JSF請求處理生命周期 904.3.3.1 重建視圖 924.3.3.2 應(yīng)用請求值 934.3.3.3 處理驗證 944.3.3.4 更新模型值 954.3.3.5 調(diào)用應(yīng)用程序 954.3.3.6 呈現(xiàn)響應(yīng) 954.4 Application及相關(guān)的類 964.4.1 Application簡介 964.4.2 Application的主要屬性 974.4.2.1 動作監(jiān)聽器 974.4.2.2 導(dǎo)航處理器 984.4.2.3 視圖處理器 984.4.2.4 缺省呈現(xiàn)包標識 984.4.2.5 狀態(tài)管理器 984.4.2.6 表達式語言解析器 984.4.3 Application動作 984.4.4 Application作為組件工廠 994.4.5 Application支持國際化編程的方法 99第5章 JSF的體系結(jié)構(gòu) 1015.1 MVC架構(gòu)模式 1015.1.1 耦合與解耦 1015.1.2 MVC架構(gòu)模式 1025.1.3 Web應(yīng)用中的MVC——Model2 1045.2 MVC架構(gòu)模式的實現(xiàn)策略 1055.2.1 Struts的實現(xiàn)策略 1055.2.2 JSF的實現(xiàn)策略 1055.2.2.1 JSF的控制器部分 1065.2.2.2 JSF的視圖部分 1075.2.2.3 JSF的模型部分 1075.3 JSF的主要組成部分 1085.3.1 JSF主要組成部分及其關(guān)系 1085.3.1.1 組成部分概覽 1085.3.1.2 各部分之間的關(guān)系 1095.3.2 用戶界面組件 1095.3.2.1 對組件的直觀認識 1095.3.2.2 JSF的組件模型 1095.3.2.3 組件模型中的接口 1105.3.2.4 組件模型中的類 1115.3.2.5 組件的作用 1125.3.2.6 組件的屬性 1125.3.2.7 組件在服務(wù)器和客戶端的表現(xiàn)形式 1135.3.2.8 組件的標識 1145.3.2.9 通過標識引用組件 1155.3.2.10 組件是有狀態(tài)的 1165.3.2.11 標準組件與自定義組件 1165.3.3 呈現(xiàn)器 1165.3.4 Backing Bean 1175.3.5 事件與事件監(jiān)聽器 1185.3.6 導(dǎo)航系統(tǒng) 1195.3.7 類型轉(zhuǎn)換器 1205.3.8 驗證器 1205.3.9 消息 120第6章 標準用戶界面組件 1226.1 標準組件概述 1226.1.1 組件的類型 1226.1.2 組件的家族 1226.1.3 組件的呈現(xiàn)器類型 1236.2 JSF的呈現(xiàn)模型 1236.2.1 直接實現(xiàn)方式 1236.2.2 委托實現(xiàn)方式 1236.2.3 呈現(xiàn)包工廠 1246.2.4 呈現(xiàn)包 1246.2.5 呈現(xiàn)器 1256.3 JSF實現(xiàn)的缺省呈現(xiàn)器類型與標準組件HTML具體類的關(guān)系 1266.4 組件在JSP頁面上的表示 1276.4.1 在JSP頁面中使用用戶界面組件的定制動作 1286.4.2 核心標簽庫 1286.4.3 HTML標簽庫 1286.4.4 組件的HTML屬性 1306.5 標準組件數(shù)據(jù)模型 1306.5.1 標準組件與呈現(xiàn)無關(guān)的屬性 1306.5.2 標準組件模型Bean 1316.5.2.1 SelectItem 1316.5.2.2 SelectItemGroup 1316.5.2.3 DataModel 1316.6 標準組件及使用方法 1326.6.1 用UIViewRoot控制頁面 1326.6.1.1 UIViewRoot簡介 1326.6.1.2 在JSP頁面上的應(yīng)用 1336.6.1.3 的使用 1346.6.2 用UIForm處理表單 1366.6.3 用UIParameter傳遞參數(shù) 1376.6.4 用Facet制作表頭、表腳及列頭 1376.6.5 用UIInput處理輸入 1386.6.5.1 用HtmlInputText輸入單行文本 1396.6.5.2 用HtmlInputSecret輸入密碼 1396.6.5.3 用HtmlInputTextarea輸入多行文本 1396.6.5.4 用HtmlInputHidden作為隱含字段 1406.6.6 用UIOutput處理輸出 1406.6.6.1 用HtmlOutputText輸出簡單文本 1406.6.6.2 用HtmlOutputFormat輸出格式化文本 1416.6.6.3 用HtmlOutputLabel作為組件的標注 1426.6.6.4 用HtmlOutputLink作為超鏈接 1426.6.7 用UISelectItem提供單個選項 1426.6.8 用UISelectItems提供多個選項 1436.6.9 用UISelectBoolean表示邏輯選項 1436.6.10 用UISelectOne作為單選組件 1446.6.10.1 單選列表框HtmlSelectOneListbox 1446.6.10.2 單選下拉菜單HtmlSelectOneMenu 1446.6.10.3 單選鈕HtmlSelect-OneRadio 1446.6.11 用UISelectMany作為復(fù)選組件 1456.6.11.1 復(fù)選列表框HtmlSelectManyListbox 1456.6.11.2 復(fù)選下拉菜單HtmlSelectManyMenu 1456.6.11.3 復(fù)選鈕HtmlSelectManyCheckbox 1456.6.12 用UICommand調(diào)用應(yīng)用程序 1466.6.12.1 命令按鈕HtmlCommandButton 1466.6.12.2 命令超鏈接HtmlCommandLink 1466.6.13 用UIMessage顯示特定組件的消息 1476.6.14 用UIMessages顯示多條消息 1476.6.15 用UIGraphic顯示圖片 1486.6.16 用UIPanel分組與布局組件 1486.6.16.1 用HtmlPanelGroup分組組件 1486.6.16.2 用HtmlPanelGrid布局組件 1486.6.17 用UIColumn表示數(shù)據(jù)列 1496.6.18 用UIData顯示數(shù)據(jù)集中的數(shù)據(jù) 1496.6.19 到哪里獲得組件更詳細的信息 150第7章 表達式語言與托管Bean 1517.1 表達式語言的出現(xiàn) 1517.1.1 統(tǒng)一表達式語言出現(xiàn)的背景 1517.1.1.1 JSP的表達式語言 1517.1.1.2 JSF自己的表達式語言 1527.1.1.3 JSP與JSF表達式語言的沖突 1537.1.2 統(tǒng)一表達式語言 1537.1.2.1 值表達式 1537.1.2.2 方法表達式 1547.1.2.3 解決原來的JSP與JSF表達式的沖突問題 1547.2 托管Bean 1557.2.1 托管Bean創(chuàng)建工具與托管Bean 1557.2.2 托管Bean的配置 1557.2.2.1 基本的配置元素 1567.2.2.2 配置托管Bean的屬性 1567.2.2.3 托管Bean屬性的初始化與JSF的IoC 1577.2.3 List配置為托管Bean 1587.2.4 Map配置為托管Bean 1587.3 托管 Bean的有效范圍 1597.3.1 請求范圍 1597.3.2 會話范圍 1607.3.3 應(yīng)用程序范圍 1607.3.4 NONE范圍 1607.3.5 不同范圍間的托管Bean的引用 161第8章 JSF中的導(dǎo)航 1638.1 JSF導(dǎo)航概述 1638.1.1 應(yīng)用程序動作與導(dǎo)航 1638.1.2 導(dǎo)航處理器的行為是可以配置的 1638.2 JSF支持的導(dǎo)航形式 1648.2.1 動態(tài)導(dǎo)航 1648.2.1.1 何為動態(tài)導(dǎo)航 1648.2.1.2 簡單動態(tài)導(dǎo)航示例回顧 1648.2.2 靜態(tài)導(dǎo)航 1658.2.2.1 何為靜態(tài)導(dǎo)航 1658.2.2.2 靜態(tài)導(dǎo)航示例 1658.3 導(dǎo)航規(guī)則 1678.3.1 導(dǎo)航規(guī)則需要配置的元素 1678.3.2 導(dǎo)航規(guī)則的匹配算法 1678.3.3 復(fù)雜導(dǎo)航規(guī)則的配置示例 1688.4 動作事件監(jiān)聽器方法對導(dǎo)航的影響 1698.4.1 動作事件監(jiān)聽器方法間接影響導(dǎo)航 1698.4.2 動作事件監(jiān)聽器方法對導(dǎo)航影響的示例 1698.4.2.1 導(dǎo)航出發(fā)頁面 1698.4.2.2 包含動作事件監(jiān)聽器方法和動作方法的Backing Bean 1708.4.2.3 導(dǎo)航目的地頁面 1718.4.2.4 配置導(dǎo)航規(guī)則 1728.4.2.5 部署和運行示例應(yīng)用程序 172第9章 JSF與應(yīng)用程序模型層的集成 1749.1 JSF作為表現(xiàn)層框架 1749.1.1 JSF結(jié)構(gòu)回顧 1749.1.2 Backing Bean扮演的角色 1749.1.3 編寫B(tài)acking Bean代碼時的不良實踐 1749.2 登錄示例應(yīng)用程序 1759.2.1 示例登錄應(yīng)用的需求分析 1759.2.2 登錄示例應(yīng)用的界面 1759.2.3 目錄結(jié)構(gòu) 1769.2.4 業(yè)務(wù)服務(wù)接口 1769.2.5 業(yè)務(wù)服務(wù)實現(xiàn) 1769.2.6 示例應(yīng)用的Backing Bean 1789.2.7 示例中的頁面文件 1799.2.8 在Faces配置文件中配置導(dǎo)航規(guī)則 1809.2.9 在Faces配置文件中配置托管Bean 1809.2.10 部署和運行示例應(yīng)用 1819.3 JSF中的控制反轉(zhuǎn)(IoC) 1829.3.1 登錄示例應(yīng)用的不足 1829.3.2 控制反轉(zhuǎn)(IoC)及依賴注入(DI) 1829.3.2.1 控制反轉(zhuǎn)及依賴注入簡介 1829.3.2.2 依賴注入的形式 1839.4 在JSF應(yīng)用程序中使用依賴注入 1859.4.1 在Backing Bean使用type2型依賴注入 1859.4.2 在Faces配置文件中配置依賴關(guān)系 1869.4.3 部署和運行示例應(yīng)用 187第10章 JSF的事件處理 18810.1 JSF事件及事件監(jiān)聽器模型 18810.1.1 事件類 18810.1.2 監(jiān)聽器類 18910.1.3 事件廣播及處理 18910.2 JSF中的事件分類 19010.2.1 值改變事件 19010.2.2 動作事件 19010.2.3 階段事件 19010.3 事件處理示例 19010.3.1 值改變事件的處理示例 19010.3.1.1 示例應(yīng)用的頁面文件 19110.3.1.2 在Backing Bean中編寫處理值改變事件方法 19210.3.1.3 在Faces配置文件中配置Backing Bean 19210.3.1.4 部署和運行 19210.3.1.5 用專門的監(jiān)聽器來處理值改變事件 19310.3.2 動作事件的處理示例 19410.3.2.1 在頁面中使用命令超鏈接 19410.3.2.2 在Backing Bean中編寫事件處理方法 19510.3.2.3 部署和運行示例應(yīng)用 19610.3.3 Immediate組件使用示例 19710.3.3.1 在頁面上使用Immediate組件 19710.3.3.2 在Backing Bean中編寫事件監(jiān)聽器方法 19910.3.3.3 觀察示例應(yīng)用的運行效果 199第11章 JSF中的轉(zhuǎn)換 20111.1 JSF的轉(zhuǎn)換模型 20111.1.1 什么是JSF中的轉(zhuǎn)換 20111.1.2 JSF中為什么需要轉(zhuǎn)換 20111.1.3 JSF中何時發(fā)生轉(zhuǎn)換 20211.1.4 JSF的轉(zhuǎn)換器接口 20211.2 使用JSF的標準轉(zhuǎn)換器 20311.2.1 JSF的標準轉(zhuǎn)換器 20311.2.2 使用標準轉(zhuǎn)換器的一般方式 20311.3 自動轉(zhuǎn)換方式示例 20411.3.1 在注冊頁面增加一個表示年齡的文本輸入框 20411.3.2 在注冊成功的頁面上顯示年齡 20411.3.3 Backing Bean年齡屬性的數(shù)據(jù)類型為int 20411.3.4 示例應(yīng)用的業(yè)務(wù)數(shù)據(jù)對象 20511.3.5 示例應(yīng)用中的自定義異常 20611.3.6 示例應(yīng)用的業(yè)務(wù)服務(wù) 20611.3.7 示例應(yīng)用的Faces配置 20611.3.8 自動轉(zhuǎn)換的效果 20711.3.8.1 自動轉(zhuǎn)換失敗的效果 20711.3.8.2 自動轉(zhuǎn)換成功的效果 20711.4 使用組件標簽的屬性 20811.5 使用轉(zhuǎn)換器標簽 20811.6 Java中的日期與時間 20911.6.1 Java中的Date類 20911.6.2 Calendar類 21011.6.3 GregorianCalendar類 21011.6.4 日期、時間的格式化 21111.6.5 訪問數(shù)據(jù)庫時使用的日期類 21111.7 日期時間轉(zhuǎn)換器示例 21211.7.1 建立示例應(yīng)用的目錄結(jié)構(gòu) 21211.7.2 新建一個可以輸入日期的頁面 21311.7.3 在頁面上使用顯示日期的組件 21311.7.4 Backing Bean中的日期型屬性 21311.7.5 業(yè)務(wù)對象中的日期屬性 21411.7.6 業(yè)務(wù)服務(wù)接口中的日期型參數(shù) 21511.7.7 在業(yè)務(wù)服務(wù)實現(xiàn)中處理日期型數(shù)據(jù) 21511.7.8 更改示例應(yīng)用的Faces配置 21611.7.9 日期轉(zhuǎn)換的效果 21711.8 數(shù)字轉(zhuǎn)換器 21811.9 使用自定義轉(zhuǎn)換器 21811.9.1 創(chuàng)建自定義轉(zhuǎn)換器 21811.9.2 注冊自定義轉(zhuǎn)換器 22011.10 自定義的轉(zhuǎn)換器示例 22011.10.1 建立示例應(yīng)用的目錄結(jié)構(gòu) 22011.10.2 示例應(yīng)用的Backing Bean 22011.10.3 新建自定義格式的業(yè)務(wù)對象 22211.10.4 修改原業(yè)務(wù)對象 22311.10.5 在業(yè)務(wù)服務(wù)接口的方法中加入新參數(shù) 22311.10.6 更改業(yè)務(wù)服務(wù)實現(xiàn)類 22411.10.7 在Faces中配置自定義轉(zhuǎn)換器 22511.10.8 在用戶注冊頁面上使用自定義轉(zhuǎn)換器 22511.10.9 在注冊成功頁面上使用自定義轉(zhuǎn)換器 22611.10.10 檢驗自定義轉(zhuǎn)換器的使用效果 226第12章 JSF中的驗證 22712.1 JSF的驗證模型 22712.1.1 驗證器類 22712.1.2 驗證器的注冊 22712.1.3 驗證處理過程 22812.1.4 標準驗證器實現(xiàn) 22812.2 使用標準驗證器示例 22912.2.1 建立示例應(yīng)用目錄結(jié)構(gòu) 22912.2.2 在頁面中使用標準驗證器 22912.2.3 部署和運行應(yīng)用程序 23012.3 正則表達式簡介 23112.4 使用自定義驗證器示例 23312.4.1 建立示例應(yīng)用目錄 23312.4.2 創(chuàng)建自定義驗證器類 23412.4.3 在Faces配置文件中注冊驗證器 23512.4.4 在頁面中使用自定義驗證器 23512.4.5 自定義驗證器的使用效果 23512.5 使用Backing Bean的驗證方法 23712.5.1 建立示例應(yīng)用目錄結(jié)構(gòu) 23712.5.2 在Backing Bean中編寫驗證方法 23712.5.3 在Faces配置中刪除自定義驗證器 23812.5.4 在頁面中引用驗證方法 23812.5.5 運行應(yīng)用程序查看驗證效果 239第13章 JSF的國際化編程 24013.1 問題的由來 24013.2 字符集的基礎(chǔ)知識 24013.2.1 計算機表示字符的方式與字符集 24013.2.2 字符集的發(fā)展 24113.2.3 UTF-8字符集 24213.3 Java及Web中的編碼 24313.3.1 Java中的編碼 24313.3.2 Web中的編碼 24313.4 中文亂碼的幾種表現(xiàn)形式及成因淺析 24413.4.1 字符變問號 24413.4.2 部分漢字是亂碼 24713.4.3 顯示亂碼(有些是漢字但并不是你預(yù)期的) 24813.4.4 讀寫數(shù)據(jù)庫時出現(xiàn)亂碼 25013.5 JSF國際化編程的思路 25013.6 JSF國際化編程的實現(xiàn) 25113.6.1 支持國際化編程的應(yīng)用的基本特征 25113.6.2 Java平臺的本地化類 25113.6.3 資源束 25213.6.4 日期與數(shù)字的格式化 25313.7 登錄示例程序的國際化與本地化 25413.7.1 收集區(qū)域敏感數(shù)據(jù) 25513.7.2 制作缺省資源文件 25513.7.3 改編頁面文件 25613.7.4 編寫和配置Servlet過濾器 25813.7.5 構(gòu)建和運行應(yīng)用程序 25913.7.6 編寫中文資源文件 25913.7.7 檢驗應(yīng)用程序的運行效果 26013.8 圖片的國際化 26113.8.1 在項目中建立存放圖片的目錄 26213.8.2 制作對應(yīng)各種不同語言的圖片 26213.8.3 在頁面文件上添加圖片 26213.8.4 在資源束文件中加上對應(yīng)圖片鍵-值對 26313.8.5 在build.xml中添加拷貝圖片的內(nèi)容 26313.8.6 觀察應(yīng)用程序的運行結(jié)果 26413.9 異常消息的國際化 26413.9.1 異常消息的種類 26513.9.2 標準異常消息 26513.9.3 自定義異常消息的處理過程 26613.10 異常消息國際化示例 26613.10.1 在資源文件中加上消息的鍵-值對 26613.10.2 創(chuàng)建消息工廠 26713.10.3 業(yè)務(wù)模型中的消息處理方式 26713.10.4 Backing Bean中的消息處理方式 26713.10.5 示例應(yīng)用的運行效果 26913.11 日期的國際化示例 26913.11.1 示例應(yīng)用要實現(xiàn)的效果 26913.11.2 建立示例應(yīng)用的目錄結(jié)構(gòu) 26913.11.3 修改頁面文件 27013.11.4 準備資源文件 27013.11.5 修改業(yè)務(wù)對象 27113.11.6 修改業(yè)務(wù)模型中的類文件 27113.11.7 修改Backing Bean 27213.11.8 國際化編程后的效果檢驗 274第14章 JSF與Tiles框架的集成 27514.1 頁面布局的幾種可選方案 27514.1.1 使用JSP指令的方法 27514.1.2 使用JSP標簽 27914.1.3 使用Tiles框架 27914.2 Tiles框架簡介 28014.3 用Tiles布局頁面的示例 28014.3.1 建立示例應(yīng)用的目錄結(jié)構(gòu) 28014.3.2 下載和安裝與Tiles有關(guān)的庫文件 28014.3.3 編寫tiles的配置文件 28114.3.4 在web.xml文件中配置tiles 28114.3.5 編寫布局模板文件 28214.3.6 編寫布局的各組成部分的頁面文件 28314.3.7 編寫應(yīng)用模板的頁面文件 28414.3.8 示例應(yīng)用的運行效果 28414.4 用Tiles布局Frame頁面 28514.4.1 Frame頁面的基礎(chǔ)知識 28514.4.2 一個簡單的Frame頁面例子 28614.4.3 讓Frame頁面居中顯示 28814.5 用Tiles布局Frame頁面的示例 28914.5.1 建立示例應(yīng)用的目錄結(jié)構(gòu) 28914.5.2 新建圖片文件 28914.5.3 更改tiles配置 28914.5.4 新建frame布局模板頁面 28914.5.5 新建用于導(dǎo)航的菜單頁面 29014.5.6 新建帶frame的頁面 29114.5.7 應(yīng)用程序的運行效果 291第15章 JSF訪問數(shù)據(jù)庫 29315.1 MS SQL Server數(shù)據(jù)庫的安裝 29315.1.1 SQL Server數(shù)據(jù)庫的安裝過程 29315.1.2 數(shù)據(jù)庫補丁包的安裝 29615.2 JDBC簡介 29715.2.1 JDBC的發(fā)展歷程 29715.2.2 JDBC的結(jié)構(gòu)和工作原理 29815.2.3 JDBC驅(qū)動器 30015.2.4 JDBC的使用場景 30015.2.5 兩層模式 30015.2.6 三層模式 30115.2.6.1 客戶層 30115.2.6.2 中間層 30115.2.6.3 數(shù)據(jù)源層 30215.3 數(shù)據(jù)訪問對象模式簡介 30215.4 讓登錄程序訪問數(shù)據(jù)庫中用戶信息 30215.4.1 建立數(shù)據(jù)庫 30215.4.2 建立數(shù)據(jù)庫表 30315.4.3 在表中輸入實驗用的數(shù)據(jù) 30415.4.4 下載和安裝JDBC驅(qū)動程序 30415.4.5 建立應(yīng)用程序的目錄結(jié)構(gòu) 30515.4.6 增加應(yīng)用程序訪問數(shù)據(jù)庫的部分 30515.4.7 修改應(yīng)用程序的業(yè)務(wù)邏輯部分 30715.4.8 修改backing bean使其使用新的service 30815.4.9 創(chuàng)建與數(shù)據(jù)訪問相關(guān)的自定義異常類 30915.4.10 修改資源文件,添加新的鍵-值對 31115.4.11 配置應(yīng)用程序 31115.4.12 運行應(yīng)用程序 313第16章 應(yīng)用程序中的異常處理 31516.1 Java異常的分類 31516.2 Java處理異常的一般方法 31716.3 創(chuàng)建自己的異常子類 32016.4 成鏈異常 32116.5 JSF應(yīng)用程序的異常處理 322第17章 應(yīng)用程序的日志 32417.1 為什么要記日志 32417.2 用什么記日志 32417.3 怎么記日志 32417.4 在登錄示例程序中記日志 32617.4.1 建立示例應(yīng)用目錄結(jié)構(gòu) 32617.4.2 下載通用日志包 32617.4.3 下載日志器實現(xiàn)Log4J 32717.4.4 寫日志有關(guān)的配置文件 32717.4.5 創(chuàng)建一個空的日志文件 32917.4.6 編寫訪問日志接口的應(yīng)用程序代碼 32917.4.7 部署和運行應(yīng)用程序 331第18章 JSF與AJAX集成 33418.1 AJAX概述 33418.1.1 什么是AJAX 33418.1.2 AJAX的原則 33418.1.3 AJAX包含那些技術(shù) 33418.1.4 AJAX的工作原理 33518.2 Ajax4jsf 33618.2.1 Ajax4jsf概述 33618.2.2 Ajax4jsf工作原理 33618.2.3 下載和安裝Ajax4jsf 33718.3 示例應(yīng)用程序 33818.3.1 建立應(yīng)用程序的目錄結(jié)構(gòu) 33918.3.2 需要的庫文件 33918.3.3 在web.xml文件中添加Ajax4jsf的過濾器 33918.3.4 在注冊頁面中使用Ajax4jsf標簽 33918.3.5 在Backing Bean中添加動作監(jiān)聽器方法 34018.3.6 部署和運行應(yīng)用 340第19章 ORM及其Hibernate實現(xiàn) 34119.1 ORM簡介 34119.1.1 對象模型與關(guān)系范例的失配 34119.1.1.1 粒度問題 34119.1.1.2 子類型問題 34119.1.1.3 標識符問題 34219.1.1.4 關(guān)聯(lián)問題 34219.1.1.5 對象圖導(dǎo)航問題 34319.1.2 集成層的可選方案 34319.1.2.1 使用JDBC 34319.1.2.2 使用EJB 34319.1.2.3 使用面向?qū)ο蟮臄?shù)據(jù)庫系統(tǒng) 34419.1.2.4 使用對象/關(guān)系映射(ORM) 34419.1.3 ORM面臨的問題 34419.2 Hibernate的結(jié)構(gòu)簡介 34419.2.1 核心應(yīng)用程序編程接口 34519.2.2 回調(diào)接口 34719.2.3 擴展接口 34819.3 映射對象 34819.3.1 基本映射 34819.3.2 標識的屬性 34919.3.3 標識生成器 35019.3.4 多對一映射/一對多映射 35019.3.5 多對一中的類示例 35019.3.6 多對一/一對多的表間關(guān)系 35319.3.7 多對一/一對多的映射文件 35319.3.8 多對一元素的主要屬性 35419.3.9 集合映射 35519.3.10 外鍵元素 35519.3.11 一對多元素的主要屬性 35519.3.12 多對多映射 35519.4 檢索對象 35719.4.1 Hibernate查詢語言 35719.4.2 條件查詢 35819.4.3 SQL查詢 35819.5 報表查詢 358第20章 JSF與Hibernate的集成 36020.1 Hibernate的配置 36020.1.1 Hibernate的下載 36020.1.2 需要的庫文件 36120.1.3 持久化類的映射文件 36120.1.4 Hibernate配置文件 36220.2 用Hibernate重寫登錄程序的數(shù)據(jù)庫訪問部分 36220.2.1 輔助工具類 36220.2.2 項目使用的數(shù)據(jù)庫 36320.3 具體的實現(xiàn) 36320.3.1 創(chuàng)建應(yīng)用程序項目目錄 36320.3.2 修改build.xml文件及調(diào)整部分配置文件的目錄 36320.3.3 準備必要的Java庫文件 36320.3.4 創(chuàng)建輔助工具類 36320.3.5 創(chuàng)建持久類及映射文件 36420.3.6 創(chuàng)建Hibernate配置文件 36420.3.7 創(chuàng)建DAO接口 36520.3.8 創(chuàng)建DAO的Hibernate實現(xiàn)類 36620.3.9 創(chuàng)建應(yīng)用服務(wù)的Hibernate實現(xiàn)類 36720.3.10 修改Backing Bean 36820.3.11 用ANT構(gòu)建和部署應(yīng)用程序 36820.3.12 運行應(yīng)用程序 36920.4 對應(yīng)用程序的回顧 36920.4.1 關(guān)于Hibernate Session的關(guān)閉問題 36920.4.2 關(guān)于示例程序中的修改問題 36920.4.3 關(guān)于DAO代碼簡化的問題 37020.5 進一步簡化DAO代碼 37020.5.1 DAO中的樣板代碼 37020.5.2 去除樣板代碼的方法 37120.5.3 部署和運行新項目 373第21章 JSF與Spring和Hibernate的集成 37421.1 Spring的組成 37421.2 Spring中的IoC以及用Spring管理JSF托管bean 37521.2.1 JSF與Spring集成的原理 37521.2.2 集成所需要做的配置工作 37521.2.3 早期版本的JSF參考實現(xiàn)在實際集成中會遇到的問題 37721.2.4 項目使用的數(shù)據(jù)庫 37821.3 用JSF、Spring和Hibernate編寫注冊登錄示例 37821.3.1 建立應(yīng)用程序項目的目錄結(jié)構(gòu) 37821.3.2 準備Spring庫文件 37821.3.3 準備JSF與Spring的膠代碼庫文件 38021.3.4 創(chuàng)建數(shù)據(jù)訪問接口 38121.3.5 創(chuàng)建數(shù)據(jù)訪問實現(xiàn)類 38121.3.6 創(chuàng)建業(yè)務(wù)服務(wù)接口 38221.3.7 創(chuàng)建業(yè)務(wù)服務(wù)實現(xiàn)類 38221.3.8 創(chuàng)建持久化類及映射文件 38421.3.9 創(chuàng)建Backing Bean 38521.3.10 創(chuàng)建注冊頁面及注冊成功頁面 38521.3.11 在Spring上下文中配置服務(wù)及數(shù)據(jù)訪問對象 38621.3.12 配置Faces上下文 38821.3.13 配置web.xml 38821.3.14 構(gòu)建、部署及運行示例應(yīng)用程序 389第22章 使用Eclipse和MyEclipse工具 39022.1 下載與配置Eclipse和MyEclipse 39022.1.1 下載IDE軟件 39022.1.2 配置開發(fā)環(huán)境 39122.2 用IDE開發(fā)示例 39422.2.1 建立新項目 39422.2.2 加入JSf Capabilities 39622.2.3 加入Spring Capabilities 39722.2.4 加入Hibernate Capabilities 39822.2.5 業(yè)務(wù)層與集成層對象的編寫與配置 40222.2.5.1 引入訪問數(shù)據(jù)庫所需要的包文件 40222.2.5.2 配置數(shù)據(jù)源 40322.2.5.3 創(chuàng)建持久化對象及其映射文件 40422.2.5.4 修改Hibernate sessionFactory的配置 40522.2.5.5 創(chuàng)建數(shù)據(jù)訪問對象的接口及實現(xiàn)類 40822.2.5.6 創(chuàng)建應(yīng)用服務(wù)接口及實現(xiàn)類和自定義異常類 40822.2.5.7 配置其他對象 40822.2.6 應(yīng)用程序表示層對象的編寫與配置 40922.2.6.1 配置Application 41022.2.6.2 配置和生成Backing Bean 41022.2.6.3 在Backing Bean中注入依賴 41122.2.6.4 在Backing Bean中編寫動作方法 41222.2.6.5 可視化方式制作頁面文件 41222.2.6.6 配置導(dǎo)航規(guī)則 41222.2.7 配置應(yīng)用程序的部署描述器文件web.xml 41322.2.8 部署和運行項目 41522.3 用IDE打開示例應(yīng)用的方法 41722.4 在IDE中使用Hibernate的反向工程 41722.4.1 創(chuàng)建一個新項目 41722.4.2 創(chuàng)建數(shù)據(jù)庫 41722.4.3 創(chuàng)建數(shù)據(jù)庫瀏覽器窗口 41822.4.4 建立必要的包 42022.4.5 加入JSF和Spring的Capabilities 42022.4.6 加入Hibernate的Capabilities 42022.4.7 應(yīng)用反向工程生成類和配置文件 42322.4.8 反向工程生成的文件樣例 425第23章 AOP及事務(wù)管理 42723.1 AOP簡介 42723.1.1 什么是AOP 42723.1.1.1 對AOP的一些常見的誤解 42723.1.1.2 AOP的一些常用術(shù)語 42823.1.2 Spring實現(xiàn)的AOP 42823.1.2.1 Spring實現(xiàn)的AOP的特點 42823.1.2.2 Spring中AOP的應(yīng)用 42923.2 事務(wù)簡介 42923.2.1 事務(wù)的基本屬性 42923.2.2 Spring的事務(wù)策略 42923.2.3 Spring支持的事務(wù)隔離度 43023.2.4 Spring支持的事務(wù)傳播類型 43023.3 事務(wù)管理示例 43123.3.1 示例應(yīng)用要演示的情形 43123.3.2 數(shù)據(jù)庫表的建立 43123.4 沒有事務(wù)管理的例子 43223.4.1 編寫持久化對象的類文件 43223.4.2 編寫映射文件 43324.4.3 編寫DAO接口 43423.4.4 編寫DAO實現(xiàn)類 43523.4.5 編寫業(yè)務(wù)服務(wù)接口 43623.4.6 編寫沒有事務(wù)處理的業(yè)務(wù)服務(wù) 43623.4.7 編寫沒有事務(wù)管理的Spring配置 43823.4.8 示例應(yīng)用的Backing Bean 43923.4.9 配置web.xml 44123.4.10 應(yīng)用程序的頁面文件 44123.4.11 示例應(yīng)用的運行效果 44123.5 編程式事務(wù)管理的例子 44223.5.1 編程式事務(wù)管理的一般方法 44223.5.2 編寫編程式事務(wù)的業(yè)務(wù)服務(wù) 44223.5.3 編寫編程式事務(wù)管理的Spring配置 44423.5.4 修改web.xml 44523.5.5 應(yīng)用的運行效果 44523.6 聲明式事務(wù)管理的例子 44523.6.1 聲明式事務(wù)管理的方法 44523.6.2 在Spring的配置文件中聲明事務(wù) 44622.6.3 修改web.xml 44723.6.4 應(yīng)用的運行效果 447第24章 權(quán)限系統(tǒng)示例應(yīng)用程序 44824.1 基于角色的訪問控制 44824.2 應(yīng)用程序的界面 44824.2.1 登錄界面 44924.2.2 管理員用戶界面 44924.2.3 普通用戶界面 45024.3 數(shù)據(jù)庫設(shè)計 45124.3.1 表的結(jié)構(gòu) 45124.3.2 表之間的關(guān)系 45424.4 持久化對象 45524.4.1 持久化對象的類文件 45524.4.2 持久化對象的映射文件 46124.5 數(shù)據(jù)訪問對象 46324.5.1 數(shù)據(jù)訪問對象接口 46424.5.2 數(shù)據(jù)訪問對象實現(xiàn) 46524.6 業(yè)務(wù)服務(wù) 46924.6.1 業(yè)務(wù)服務(wù)接口 46924.6.2 業(yè)務(wù)服務(wù)實現(xiàn) 47024.6.3 編程式事務(wù)在示例中的應(yīng)用 47324.7 Backing Bean 47424.7.1 使用Backing Bean的策略 47424.7.2 示例Backing Bean的編碼 47524.7.3 安全退出系統(tǒng)的動作 47824.7.4 在Backing Bean中驗證Email地址 47824.7.5 在Backing Bean中引用其他Backing Bean 48024.8 配置文件 48224.8.1 應(yīng)用程序部署描述器文件 48224.8.2 JSF配置文件 48324.8.3 Spring配置文件 48624.8.4 Hibernate的配置文件 48924.9 頁面文件 48924.9.1 index.jsp 48924.9.2 登錄頁面文件 48924.9.3 Frameset文件 49024.9.4 樹型菜單文件 49124.9.5 添加新用戶的頁面文件 49224.9.6 指派用戶角色的頁面文件 49224.9.7 安全登出系統(tǒng)的頁面文件 49524.9.8 顯示操作結(jié)果的頁面文件 49524.9.9 頁面間的導(dǎo)航關(guān)系 49624.10 輔助文件 49624.10.1 字符集過濾器類文件 49624.10.2 資源文件 49724.10.3 消息工廠類文件 49724.11 怎樣讓示例程序運行起來 49724.11.1 創(chuàng)建示例數(shù)據(jù)庫 49724.11.2 更改配置文件中的數(shù)據(jù)庫密碼 49824.11.3 用IDE部署示例應(yīng)用 49824.12 為已有的JSF項目增加AJAX支持 49824.12.1 導(dǎo)入庫文件 49824.12.2 更改頁面文件 49824.12.3 更改Backing Bean 50024.12.4 更改業(yè)務(wù)服務(wù)接口及實現(xiàn) 50124.12.5 更改應(yīng)用程序部署描述器文件 502第25章 辦公用品管理系統(tǒng)示例程序 50325.1 示例程序的需求分析 50325.1.1 需求分析簡述 50325.1.2 用例(Use Case)圖 50325.1.3 用例文檔的書寫 50425.1.4 系統(tǒng)需要用到的頁面 50525.1.5 業(yè)務(wù)規(guī)則的說明 50625.1.6 其他要求 50625.2 示例程序的架構(gòu)設(shè)計 50625.2.1 多層架構(gòu) 50625.2.2 選擇合適的技術(shù) 50625.2.3 表示層設(shè)計 50725.2.4 業(yè)務(wù)邏輯層設(shè)計 50725.2.5 數(shù)據(jù)映射層設(shè)計 50725.2.6 數(shù)據(jù)庫設(shè)計 50725.3 示例程序的實現(xiàn) 50825.3.1 表示層實現(xiàn) 50825.3.2 業(yè)務(wù)層實現(xiàn) 51025.3.3 數(shù)據(jù)映射層實現(xiàn) 51225.4 其他實用功能的實現(xiàn) 51225.4.1 文件上傳 51225.4.1.1 Java中的輸入輸出與流 51225.4.1.2 文件的路徑與目錄 51225.4.1.3 MyFaces的文件上傳標簽 51325.4.2 文件上傳的實現(xiàn) 51325.4.3 處理分頁 51825.4.4 發(fā)送電子郵件 52125.4.4.1 Spring對電子郵件的抽象 52125.4.4.2 編寫B(tài)acking Bean 52125.4.4.3 配置郵件發(fā)送器和郵件消息 52325.4.4.4 編寫發(fā)送郵件的方法 52425.4.4.5 發(fā)送郵件時需要加入的庫文件 52525.5 示例應(yīng)用程序的測試 52525.5.1 測試簡介 52525.5.2 測試的分類 52625.5.3 模擬測試與集成測試 52625.5.4 常用的測試框架JUnit 52625.5.5 測試用例的運行方式 52725.5.6 數(shù)據(jù)訪問層測試示例 52825.5.6.1 創(chuàng)建測試基類 52825.5.6.2 創(chuàng)建測試具體類 52925.5.6.3 修改向?qū)傻臏y試類文件 53125.5.6.4 測試過程 53225.5.6.5 在IDE中測試易出現(xiàn)的問題 53325.6 部署和運行應(yīng)用程序 53325.6.1 數(shù)據(jù)庫的建立 53325.6.2 配置文件中的參數(shù)更改 534第26章 應(yīng)用程序的安全性 53526.1 應(yīng)用程序的安全性簡介 53526.2 權(quán)限管理示例程序的安全性考慮 53526.2.1 控制對資源的訪問 53526.2.2 保護敏感數(shù)據(jù) 53626.3 防止用戶繞過登錄的方法 53726.3.1 登錄時保存信息到HttpSession中 53726.3.2 制作驗證HttpSession中內(nèi)容的頁面 53926.3.3 在需要保護的頁面前部包含驗證頁面 53926.4 Java密碼架構(gòu)和加密服務(wù)提供者 54026.4.1 Java密碼架構(gòu) 54026.4.2 加密服務(wù)提供者 54126.4.3 Java密碼架構(gòu)的使用方式 54126.5 消息摘要與口令認證 54126.5.1 什么是消息摘要 54126.5.2 口令的加密存儲 54226.5.3 加密后的口令的驗證 54326.6 權(quán)限管理應(yīng)用的口令加密示例 54426.6.1 新建示例項目 54426.6.2 更改人員表中口令字段的數(shù)據(jù)類型 54426.6.3 改變持久化類中口令字段的數(shù)據(jù)類型 54426.6.4 更改映射文件中口令字段的數(shù)據(jù)類型 54526.6.5 在業(yè)務(wù)服務(wù)實現(xiàn)中增加口令加密方法 54626.6.6 在業(yè)務(wù)服務(wù)實現(xiàn)中增加口令驗證方法 54726.6.7 更改業(yè)務(wù)服務(wù)實現(xiàn)的注冊新用戶方法 54826.6.8 更改業(yè)務(wù)服務(wù)實現(xiàn)的登錄方法 54926.6.9 更改業(yè)務(wù)服務(wù)實現(xiàn)的用戶改變口令方法 55126.6.10 在數(shù)據(jù)庫表中查看口令數(shù)據(jù) 552
編輯推薦
《JSF第一步:JSF+Spring+Hibernate+AJAX編程》的特點主要是從編程實踐的角度來介紹這些框架的基本原理,以及用示例演示如何具體應(yīng)用這些框架來開發(fā)一個Web應(yīng)用程序。在介紹各種框架時,對涉及到的Web開發(fā)中容易遇到的疑難問題盡可能給出淺顯易懂的解釋,其目的是幫助想利用這些框架進行開發(fā)的人員盡快進入實戰(zhàn)狀態(tài)。 《JSF第一步:JSF+Spring+Hibernate+AJAX編程》附光盤1張。
圖書封面
圖書標簽Tags
無
評論、評分、閱讀與下載