動態(tài)Web數(shù)據(jù)庫技術(shù)--基于JSP和XML技術(shù)實現(xiàn)
-
【作 者】王紅 主編
【I S B N 】978-7-5084-3314-9
【責任編輯】吳萍
【適用讀者群】本科
【出版時間】2007-07-01
【開 本】16開本
【裝幀信息】平裝(光膜)
【版 次】第1版
【頁 數(shù)】
【千字數(shù)】
【印 張】
【定 價】¥28
【叢 書】21世紀高等院校規(guī)劃教材
【備注信息】
簡介
本書特色
前言
章節(jié)列表
精彩閱讀
下載資源
相關(guān)圖書
本書共9章,前6章為上篇,講述從Web角度研究數(shù)據(jù)庫的內(nèi)容,包括Web數(shù)據(jù)庫體系結(jié)構(gòu)和如何在JSP中使用各種數(shù)據(jù)庫,后3章為下篇,講述XML在數(shù)據(jù)庫領域的應用。主要內(nèi)容包括:Web數(shù)據(jù)庫概論、JSP基礎、JSP隱含對象、JSP中使用數(shù)據(jù)庫、JSP與JavaBean、Web數(shù)據(jù)庫實例??網(wǎng)上書店、XML基礎、XML文檔解析、XML與數(shù)據(jù)庫。每章都配有相應的上機實訓。
本書注重應用能力的培養(yǎng),基本理論以夠用為度。通過該課程的學習,使學生不僅掌握數(shù)據(jù)庫系統(tǒng)的基本理論,而且通過上機實驗和實習加深對基本理論和基本概念的理解,并能夠編寫具體的JSP應用程序,使學生具有一定的理論水平和應用各種Web數(shù)據(jù)庫研發(fā)的能力。
本書內(nèi)容豐富、選材適當、通俗易懂、理論結(jié)合實際,注重應用能力的培養(yǎng),既方便教學,也便于自學,可作為應用型本科計算機及相關(guān)專業(yè)學生的Web數(shù)據(jù)庫技術(shù)課程方面的教材,也可以作為成人高校、高職高專以及本科院校舉辦的二級職業(yè)技術(shù)學院計算機及相關(guān)專業(yè)學生學習Web數(shù)據(jù)庫的教材,還可供有關(guān)專業(yè)的師生及專業(yè)技術(shù)人員學習參考。
1.本教材從兩個不同的角度介紹了Web數(shù)據(jù)庫的知識。上篇以在JSP中使用數(shù)據(jù)庫為例,講述從Web角度看待數(shù)據(jù)庫操作的基本概念以及實際應用;下篇以JSP中解析XML為例,講述從數(shù)據(jù)庫角度看待Web的基本概念、實際應用及要解決的問題。
2.本教材以應用型高等學校的學生為讀者對象,基本理論以夠用為度。通過該課程的學習,使學生不僅掌握數(shù)據(jù)庫系統(tǒng)的基本理論,而且通過上機實驗和實習加深對基本理論和基本概念的理解,并能夠編寫具體的JSP應用程序,使學生通過學習具有一定的理論水平和應用各種Web數(shù)據(jù)庫研發(fā)的能力。
3.本書內(nèi)容先進,緊緊跟隨計算機軟件的發(fā)展,使學生能夠了解數(shù)據(jù)庫領域的最新動態(tài),擴展知識面。
數(shù)據(jù)庫技術(shù)是現(xiàn)代計算機技術(shù)中發(fā)展最快的領域之一,也是應用最廣的技術(shù)之一,它已經(jīng)成為計算機應用系統(tǒng)的核心技術(shù)和重要基礎。而Web數(shù)據(jù)庫將數(shù)據(jù)庫技術(shù)和Web技術(shù)相融合,兼?zhèn)淞薟eb技術(shù)和數(shù)據(jù)庫技術(shù)的優(yōu)點,充分利用了大量已有的數(shù)據(jù)庫信息,最高程度地實現(xiàn)資源共享。因此Web與數(shù)據(jù)庫技術(shù)的結(jié)合成為當前熱點之一。
數(shù)據(jù)庫原理是高等學校計算機類相關(guān)專業(yè)的必修課,但是僅僅知道數(shù)據(jù)庫原理是不夠的。傳統(tǒng)的數(shù)據(jù)庫教材以設計為出發(fā)點,理論講述過于深奧,結(jié)合實際過少,不適合應用型高等學校計算機類相關(guān)專業(yè)的培養(yǎng)目標。Web數(shù)據(jù)庫與傳統(tǒng)數(shù)據(jù)庫有許多相似點,也有許多不同點,是傳統(tǒng)數(shù)據(jù)庫的延伸和實用化。學好Web數(shù)據(jù)庫技術(shù),一方面可以更好地理解數(shù)據(jù)庫技術(shù)的原理,另一方面為將數(shù)據(jù)庫技術(shù)應用到實際中打下一個好的基礎。這是真正意義上理論和實踐的統(tǒng)一。目前適合應用型高等學校教學特點的Web數(shù)據(jù)庫技術(shù)教材較少,特別是結(jié)合當代先進的應用且理論聯(lián)系實際的教材更少。
Web數(shù)據(jù)庫這個概念,可以認為主要有兩層含義:
第一層含義是指:數(shù)據(jù)庫作為Web這個全球信息源的一個重要組成部分,向用戶發(fā)布數(shù)據(jù)。具體過程是:在客戶/服務器框架中,運行于客戶端的應用程序,通過Internet/Web這個連通全球的軟/硬件平臺,鏈接到特定URL上的服務器,同時把查詢發(fā)送到服務器端,然后服務器到后臺的數(shù)據(jù)庫中訪問數(shù)據(jù)庫,再把查詢結(jié)果返回給用戶。數(shù)據(jù)庫處理的對象是存儲于數(shù)據(jù)庫中的結(jié)構(gòu)化數(shù)據(jù)。對于服務器端的數(shù)據(jù)庫而言,需要考慮的技術(shù)問題是應付成千上萬用戶的并發(fā)、經(jīng)常性地訪問,數(shù)據(jù)庫的可擴展性、容錯性、查詢優(yōu)化和與問題有關(guān)的存儲(聚簇、索引)。
第二層含義是指:把Web看做一個數(shù)據(jù)庫,用數(shù)據(jù)庫技術(shù)對Web上的數(shù)據(jù)進行有效管理。Web上的數(shù)據(jù)是異構(gòu)的、經(jīng)常變化的、分布的數(shù)據(jù),它的模式是不嚴格的、易變的,它的數(shù)量級又是海量的。數(shù)據(jù)庫技術(shù)提供了存儲和訪問大量數(shù)據(jù)的有效方法,但是它處理的對象是高度結(jié)構(gòu)化、有固定模式的數(shù)據(jù)。對于Web數(shù)據(jù),需要事先知道Web數(shù)據(jù)的結(jié)構(gòu),然后才能形成查詢,如何描述這種結(jié)構(gòu)以及與此結(jié)構(gòu)對應的一系列問題是當前研究的熱點。具體而言,數(shù)據(jù)庫技術(shù)管理Web數(shù)據(jù)涉及以下一些問題:Web數(shù)據(jù)的模型建立、存儲、模式管理、查詢、查詢優(yōu)化和查詢結(jié)果重構(gòu)(根據(jù)用戶查詢而形成的視圖)。作為HTML的替代,XML將作為第二代的Web表示和交換語言,引入XML的初衷是要極大地促進Internet/Web的發(fā)展和應用,同時也給數(shù)據(jù)庫研究界帶來了巨大的機會,將使數(shù)據(jù)庫技術(shù)和研究擴展到Web數(shù)據(jù)的管理成為可能。從這個意義上講,XML數(shù)據(jù)庫是Web數(shù)據(jù)庫中的一種,XML數(shù)據(jù)庫就是從數(shù)據(jù)庫的角度來研究以XML格式表達的Web數(shù)據(jù)。它包括XML數(shù)據(jù)的存儲、查詢語言、模式管理、查詢處理等。由于XML數(shù)據(jù)可以有效地表達Web數(shù)據(jù),所以XML數(shù)據(jù)庫的研究有利于Web信息共享和交換,也將有力地促進Web數(shù)據(jù)庫的研究。
綜上所述,Web數(shù)據(jù)庫的第一層含義主要是從Web的角度來看待數(shù)據(jù)庫(即Web下的數(shù)據(jù)庫),把數(shù)據(jù)庫看做Web的一個組成部分,其中存有大量的結(jié)構(gòu)化數(shù)據(jù);第二層含義主要是從數(shù)據(jù)庫的角度來看待Web(即數(shù)據(jù)庫下的Web),把Web上的數(shù)據(jù)作為它管理的對象,全球的Web就是一個人類有史以來最大的數(shù)據(jù)庫。
根據(jù)上述觀點,本教材從兩個不同的角度介紹了Web數(shù)據(jù)庫的知識。上篇以在JSP中使用數(shù)據(jù)庫為例,講述從Web角度看待數(shù)據(jù)庫操作的基本概念以及實際應用;下篇以JSP中解析XML為例,講述從數(shù)據(jù)庫角度看待Web的基本概念、實際應用及要解決的問題。本教材以應用型高等學校的學生為讀者對象,基本理論以夠用為度。通過該課程的學習,使學生不僅掌握數(shù)據(jù)庫系統(tǒng)的基本理論,而且通過上機實驗和實習加深對基本理論和基本概念的理解,并能夠編寫具體的JSP應用程序,使學生通過學習具有一定的理論水平和應用各種Web數(shù)據(jù)庫研發(fā)的能力。另外,本書內(nèi)容先進,緊緊跟隨計算機軟件的發(fā)展,使學生能夠了解數(shù)據(jù)庫領域的最新動態(tài),擴展知識面。
本書通過精心組織和編排,前6章為上篇,講述從Web角度研究數(shù)據(jù)庫的內(nèi)容,包括Web數(shù)據(jù)庫體系結(jié)構(gòu)和如何在JSP中使用各種數(shù)據(jù)庫,后3章為下篇,講述XML在數(shù)據(jù)庫領域的應用。前后互為補充。本書共9章,基本內(nèi)容為:第1章Web數(shù)據(jù)庫概論,第2章JSP基礎,第3章JSP隱含對象,第4章JSP中使用數(shù)據(jù)庫,第5章JSP與JavaBean,第6章Web數(shù)據(jù)庫實例——網(wǎng)上書店,第7章XML基礎,第8章XML文檔解析,第9章XML與數(shù)據(jù)庫。每章都配有相應的上機實訓。
本書作為高等學校計算機類及相關(guān)專業(yè)的教材,內(nèi)容豐富、通俗易懂、便于自學。本書所有代碼均經(jīng)過調(diào)試運行,讀者可到中國水利水電出版社網(wǎng)站上下載,網(wǎng)址為:http://www.waterpub.com.cn/softdown。本書建議70學時左右。
本書由王紅主編,馬學強、張敬濤任副主編。本書主要編寫人員分工如下:王紅編寫了1~6章,馬學強編寫了7~8章,張敬濤編寫了第9章。參加本書編寫工作的還有:李作偉、李鳳云、董佑平、徐延峰、崔曼寧、張景峰、劉兵、張偉、史瑞芳、杜紅兵等,沈祥玖教授審閱了全書,并提出了許多寶貴意見,在此表示感謝。
由于編者水平有限,本書可能還有不足之處,希望讀者提出寶貴意見。
編 者
2005年10月
前言
上 篇
第1章 Web數(shù)據(jù)庫概述 1
1.1 Web數(shù)據(jù)庫的產(chǎn)生與發(fā)展 1
1.1.1 Internet的產(chǎn)生和發(fā)展 1
1.1.2 Web的起源和發(fā)展 1
1.1.3 數(shù)據(jù)庫技術(shù)的發(fā)展 3
1.1.4 什么是Web數(shù)據(jù)庫 4
1.1.5 Web數(shù)據(jù)庫的發(fā)展 5
1.2 Web數(shù)據(jù)庫系統(tǒng)的體系結(jié)構(gòu) 6
1.2.1 應用的邏輯結(jié)構(gòu) 6
1.2.2 數(shù)據(jù)庫的集中式體系結(jié)構(gòu) 7
1.2.3 數(shù)據(jù)庫的C/S體系結(jié)構(gòu) 7
1.2.4 Web的B/S體系結(jié)構(gòu) 9
1.2.5 數(shù)據(jù)庫的三層(C/S/S)體系結(jié)構(gòu) 10
1.2.6 數(shù)據(jù)庫的三層(B/S/S)體系結(jié)構(gòu) 11
1.2.7 中間件 13
1.2.8 多層B/S體系結(jié)構(gòu) 13
1.2.9 幾種體系結(jié)構(gòu)的比較 14
1.3 Web數(shù)據(jù)庫訪問技術(shù) 16
1.3.1 CGI(Comnon Gate Interface)技術(shù) 17
1.3.2 WebAPI(Web Application Programing Interface)技術(shù) 19
1.3.3 ASP(Active Server Page)技術(shù) 19
1.3.4 PHP技術(shù) 21
1.3.5 Servlet技術(shù) 21
1.3.6 JSP(Java Server Page)技術(shù) 23
1.3.7 Oracle Web 應用服務器 25
1.3.8 基于Web的數(shù)據(jù)庫訪問技術(shù)比較 27
本章小結(jié) 27
習題 28
第2章 JSP基礎 29
2.1 JSP概述 29
2.1.1 第一個JSP頁面 29
2.1.2 JSP運行原理 30
2.1.3 JSP與Servlet的關(guān)系 33
2.1.4 配置JSP運行環(huán)境 34
2.1.5 可以支持JSP運行的其他服務器 37
2.1.6 JSP頁面測試 38
2.1.7 小結(jié) 39
2.2 JSP頁面的基本組成 39
2.3 JSP頁面中的注釋 41
2.3.1 HTML注釋 41
2.3.2 隱藏注釋 42
2.3.3 腳本注釋 43
2.4 聲明 44
2.4.1 變量聲明 44
2.4.2 方法聲明 45
2.4.3 聲明類 48
2.5 Java代碼段 49
2.6 表達式 51
2.7 JSP指令 52
2.7.1 page指令 53
2.7.2 include指令 56
2.7.3 taglib指令 59
2.8 JSP動作 63
2.8.1 jsp:include動作 63
2.8.2 jsp:param動作標記 65
2.8.3 jsp:forward動作 66
2.8.4 jsp:plugin 動作 68
2.8.5 jsp:useBean動作 70
本章小結(jié) 70
習題 71
實驗一 JSP腳本和指令 72
第3章 JSP隱含對象 74
3.1 request對象 74
3.1.1 獲得客戶端提交的信息 75
3.1.2 處理中文信息 77
3.1.3 其他常用方法 79
3.1.4 用戶注冊 81
3.1.5 獲取HTML表單中的各種數(shù)據(jù) 82
3.1.6 表格 87
3.2 response對象 89
3.2.1 動態(tài)設置contentType屬性 89
3.2.2 response對象的http頭 92
3.2.3 response重定向 93
3.2.4 response的狀態(tài)行 93
3.3 out對象 95
3.4 session對象 97
3.4.1 session對象的ID標識 99
3.4.2 session對象和URL重寫 100
3.4.3 在會話對象中保存數(shù)據(jù) 102
3.4.4 session對象的生存時間 104
3.4.5 session對象的新與舊 106
3.5 application對象 107
3.5.1 application對象的常用方法 108
3.5.2 用application對象制作留言板 110
3.6 page對象 112
3.7 config 對象 112
3.8 exception 對象 112
3.9 pageContext對象 112
本章小結(jié) 114
習題 115
實驗二 JSP隱含對象的使用 117
第4章 JSP中使用數(shù)據(jù)庫 120
4.1 JDBC技術(shù)概述 120
4.1.1 什么是JDBC 120
4.1.2 JDBC的用途 120
4.1.3 JDBC與ODBC和其他API的比較 121
4.1.4 兩層模型和三層模型 121
4.1.5 SQL的一致性 122
4.1.6 JDBC產(chǎn)品組件 123
4.1.7 JDBC驅(qū)動程序的類型 123
4.2 使用JDBC 125
4.2.1 注冊和加載驅(qū)動器 125
4.2.2 建立連接 126
4.2.3 發(fā)送SQL語句 128
4.2.4 使用Statement 對象執(zhí)行語句 132
4.2.5 ResultSet對象 132
4.2.6 關(guān)閉 Statement對象和Connection對象 138
4.2.7 事務 140
4.2.8 事務隔離級別 142
4.3 在JSP中通過JDBC-ODBC橋使用數(shù)據(jù)庫 143
4.3.1 順序查詢 145
4.3.2 隨機查詢 146
4.3.3 參數(shù)查詢 149
4.3.4 排序查詢 150
4.3.5 更新記錄 151
4.3.6 添加記錄 153
4.3.7 刪除記錄 154
4.4 在JSP中通過本地協(xié)議純Java方式使用數(shù)據(jù)庫 155
4.4.1 訪問Oracle數(shù)據(jù)庫 155
4.4.2 訪問SQL Server數(shù)據(jù)庫 156
4.4.3 查詢Excel電子表格 157
4.5 共享數(shù)據(jù)庫連接 158
4.6 成績錄入查詢系統(tǒng) 160
本章小結(jié) 164
習題 165
實驗三 JDBC技術(shù) 166
第5章 JSP與JavaBean 169
5.1 JavaBean組件技術(shù) 169
5.1.1 JavaBean實現(xiàn)機理 169
5.1.2 JavaBean的屬性和方法 170
5.2 在JSP中使用JavaBean 180
5.2.1
5.2.2
5.2.3
5.3 Bean的存放目錄 190
5.3.1 對任何Web應用都可以使用的Bean的存放位置 191
5.3.2 只對examples目錄可用的Bean的存放位置 191
5.3.3 只供某個Web應用使用的Bean的存放位置 191
5.4 JSP與Bean結(jié)合舉例 191
5.4.1 三角形Bean 191
5.4.2 購物車Bean 192
5.4.3 讀文件Bean 193
5.4.4 猜數(shù)字Bean 194
5.4.5 標準化試題Bean 194
本章小結(jié) 195
習題 196
實驗四 JSP標準動作的使用 198
第6章 Web數(shù)據(jù)庫實例——網(wǎng)上書店 204
6.1 系統(tǒng)功能 204
6.2 數(shù)據(jù)庫設計 205
6.3 各個頁面的設計 205
6.3.1 主頁 206
6.3.2 用戶注冊 206
6.3.3 用戶登錄 207
6.3.4 訂購圖書 207
6.3.5 查看訂單 208
6.3.6 修改訂單 208
6.3.7 書目瀏覽 209
6.3.8 修改密碼 209
6.3.9 修改個人信息 210
本章小結(jié) 210
習題 210
實驗五 綜合實驗——教師查詢系統(tǒng) 210
實驗六 綜合實驗——公交車線路查詢系統(tǒng) 213
下 篇
第7章 XML基礎 215
7.1 XML快速入門 215
7.1.1 什么是XML 215
7.1.2 第一個XML文檔 217
7.1.3 XML概念的進一步解釋 218
7.2 XML的術(shù)語 221
7.2.1 XML文檔的有關(guān)術(shù)語 221
7.2.2 DTD的有關(guān)術(shù)語 223
7.3 XML語法 225
7.3.1 XML語法規(guī)則 225
7.3.2 XML中的語法 226
7.4 DTD的語法 233
7.4.1 元素 233
7.4.2 屬性 235
7.4.3 XML實例解析 236
7.5 XML Schema 237
7.5.1 XML Schema的發(fā)展 237
7.5.2 Schema文檔 238
7.5.3 XSD數(shù)據(jù)類型 238
7.5.4 簡單類型定義 239
7.5.5 復雜類型定義 243
7.5.6 element元素 244
7.5.7 attribute元素 245
7.5.8 group元素 246
7.5.9 attributeGroup元素 246
7.5.10 sequence元素 247
7.5.11 choice元素 247
7.5.12 all元素 248
7.5.13 簡單內(nèi)容simpleContent元素 248
7.5.14 全局元素聲明 249
7.5.15 模式與XML文檔的關(guān)聯(lián) 252
本章小結(jié) 254
習題 255
實驗七 XML基礎 258
第8章 XML文檔解析 263
8.1 XML解析基礎 263
8.1.1 解析器 263
8.1.2 文檔對象模型(DOM) 265
8.1.3 XML簡單程序編程接口(SAX) 268
8.1.4 DOM解析器的高級功能 271
8.2 XML解析舉例 272
8.2.1 DOM解析XML文檔 272
8.2.2 SAX解析XML文檔 276
8.2.3 解析器的高級功能 281
本章小結(jié) 283
習題 284
實驗八 XML解析 285
第9章 XML與數(shù)據(jù)庫 289
9.1 借助XML文檔實現(xiàn)數(shù)據(jù)庫之間數(shù)據(jù)互換 289
9.1.1 將XML數(shù)據(jù)插入數(shù)據(jù)庫 289
9.1.2 由數(shù)據(jù)庫中數(shù)據(jù)生成XML文檔 290
9.2 文檔結(jié)構(gòu)與數(shù)據(jù)庫結(jié)構(gòu)的映射 293
9.2.1 基于模板驅(qū)動的映射 293
9.2.2 基于模型驅(qū)動的映射 294
9.3 SQL Server對XML的支持 296
9.3.1 配置IIS服務器支持SQL XML 296
9.3.2 使用HTTP執(zhí)行簡單查詢 297
9.3.3 應用XSL樣式單的查詢 297
9.3.4 使用模板查詢 299
9.3.5 使用XPath查詢 301
9.4 XML數(shù)據(jù)庫 304
9.4.1 XML和半結(jié)構(gòu)化數(shù)據(jù) 305
9.4.2 XML數(shù)據(jù)庫的崛起 305
本章小結(jié) 307
習題 307
實驗九 XML與數(shù)據(jù)庫 307
參考文獻 311
- 高等數(shù)學(下冊)(第二版)
- 高等數(shù)學(上冊)(第二版)
- Visual Basic程序設計(第二版)
- 離散數(shù)學(第二版)
- 復變函數(shù)與積分變換
- Visual C++ & Android程序設計綜合實訓
- 高等數(shù)學(下冊)
- Visual Basic程序設計簡明教程(第二版
- 網(wǎng)絡與信息安全教程(第二版)
- 高等數(shù)學(上冊)
- 綜合布線技術(shù)與施工(第二版)
- 微型計算機原理與接口技術(shù)學習與實驗指
- 計算機圖形學(第二版)
- Visual C++程序設計教程(第二版)
- 物流管理專業(yè)實踐與指導
- Access 2010數(shù)據(jù)庫技術(shù)基礎及應用