TOP
0
0
【簡體曬書區】 單本79折,5本7折,活動好評延長至5/31,趕緊把握這一波!
瘋狂XML講義(第3版)(簡體書)
滿額折
瘋狂XML講義(第3版)(簡體書)
瘋狂XML講義(第3版)(簡體書)
瘋狂XML講義(第3版)(簡體書)
瘋狂XML講義(第3版)(簡體書)
瘋狂XML講義(第3版)(簡體書)
瘋狂XML講義(第3版)(簡體書)
瘋狂XML講義(第3版)(簡體書)
瘋狂XML講義(第3版)(簡體書)
瘋狂XML講義(第3版)(簡體書)
瘋狂XML講義(第3版)(簡體書)
瘋狂XML講義(第3版)(簡體書)
瘋狂XML講義(第3版)(簡體書)
瘋狂XML講義(第3版)(簡體書)
瘋狂XML講義(第3版)(簡體書)
瘋狂XML講義(第3版)(簡體書)
瘋狂XML講義(第3版)(簡體書)
瘋狂XML講義(第3版)(簡體書)
瘋狂XML講義(第3版)(簡體書)
瘋狂XML講義(第3版)(簡體書)
瘋狂XML講義(第3版)(簡體書)
瘋狂XML講義(第3版)(簡體書)
瘋狂XML講義(第3版)(簡體書)
瘋狂XML講義(第3版)(簡體書)
瘋狂XML講義(第3版)(簡體書)
瘋狂XML講義(第3版)(簡體書)

瘋狂XML講義(第3版)(簡體書)

人民幣定價:99 元
定  價:NT$ 594 元
優惠價:87517
缺貨無法訂購
相關商品
商品簡介
作者簡介
目次

商品簡介

主要分為五個部分。第一部分介紹了XML、DTD、XML Schema等基礎知識,這些知識主要教讀者如何定義有效的XML文檔,這部分內容是深入學習後面知識的基礎,也是每個使用XML的開發者都應該掌握的基礎。第二部分介紹了CSS、XSLT和XPath等知識,通過使用CSS或XSLT,可直接將XML文檔當成視圖技術。第三部分介紹了DOM、SAX、JAXP、dom4j、JDOM、XQuery和XQJ等,其中的DOM、SAX、JAXP、dom4j和JDOM都以結構化的方式來創建、解析XML文檔,從而可以將XML文檔作為數據傳輸工具,而XQuery則是一種新規範,通過XQuery可以查詢XML文檔中的數據,就像使用SQL查詢關系數據庫的數據一樣。第四部分介紹了Web ServicesService和CXF,其中CXF是Java領域的主流Web ServicesService框架,簡單易用。第五部分則提供了兩個綜合性案例:基於XML的電子公告系統和電子拍賣系統,讓讀者將前面所學應用到實際項目中。尤其是電子拍賣系統。它是一個包含5個表,表之間具有複雜關聯映射的系統,該案例採用目前流行、規範的輕量級Java EE架構,將整個應用分為領域對象層、DAO層和業務邏輯層,然後用CXF將業務邏輯組件包裝成Web ServicesService,從而可以將現有的Java EE項目與其他平臺的、其他語言的異構項目進行整合,具有極好的指導價值和借鑒意義。

作者簡介

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

目次

第1章 XML概述 1
1.1 XML的起源 2
1.1.1 標記語言 2
1.1.2 XML的基本概念 3
1.1.3 XML和HTML 4
1.2 XML的優勢 4
1.2.1 簡單易用的標記語言 4
1.2.2 嚴格的格式 5
1.2.3 數據邏輯和顯示邏輯分離 6
1.3 XML和Java EE 6
1.3.1 配置描述 6
1.3.2 簡化的數據交換 8
1.3.3 Web Service 8
1.4 XML的編輯工具 9
1.4.1 普通文本編輯工具 9
1.4.2 XMLSpy簡介 9
1.4.3 使用XMLSpy編輯XML文檔 10
1.5 XML的競爭對手 11
1.5.1 注解 11
1.5.2 輕量級的數據交換格式―JSON 13
1.6 本章小結 16

第2章 XML文檔規則 17
2.1 XML文檔的分類 18
2.1.1 格式不好的XML文檔 18
2.1.2 格式良好但無效的XML文檔 19
2.1.3 有效的XML文檔 20
2.2 XML文檔的整體結構 21
2.2.1 有且僅有一個根元素 21
2.2.2 元素必須合理結束 22
2.2.3 元素之間必須合理嵌套 22
2.2.4 元素的屬性必須有值 23
2.3 XML聲明 25
2.4 XML元素的基本規則 27
2.4.1 合法的標簽名 27
2.4.2 嵌套子元素 28
2.4.3 空元素 28
2.5 字符數據 29
2.5.1 使用實體引用 30
2.5.2 使用CDATA標記 30
2.6 注釋 31
2.7 處理指令 32
2.8 W3C對於屬性的使用建議 33
2.9 換行處理 35
2.10 本章小結 35
本章練習 35

第3章 DTD詳解 36
3.1 XML語義約束 37
3.2 引入DTD 38
3.2.1 內部DTD 38
3.2.2 外部DTD 39
3.2.3 公用DTD 40
3.3 DTD文檔概覽 41
3.3.1 DTD文檔的結構 41
3.3.2 驗證XML文檔的有效性 41
3.4 定義元素 42
3.4.1 定義任意類型的元素 42
3.4.2 定義空元素 44
3.4.3 定義字符串內容的元素 44
3.4.4 定義混合內容的元素 45
3.5 定義子元素 46
3.5.1 有序的子元素 46
3.5.2 互斥的子元素 47
3.5.3 子元素出現的頻率 48
3.5.4 組合子元素 49
3.5.5 無序的子元素 51
3.6 定義元素屬性 52
3.6.1 對屬性的約束規則 53
3.6.2 定義屬性類型 55
3.7 定義實體 57
3.7.1 定義普通實體 58
3.7.2 定義參數實體 59
3.7.3 外部實體 60
3.7.4 外部參數實體 61
3.8 定義符號 61
3.8.1 未解析實體 62
3.8.2 ENTITY和ENTITIES類型的屬性 63
3.8.3 NOTATION類型的屬性 64
3.9 使用XMLSpy創建DTD 64
3.10 本章小結 66
本章練習 66

第4章 XML Schema基本語法 67
4.1 DTD和XML Schema 68
4.1.1 XML Schema概述及其優勢 68
4.1.2 XML Schema在Java EE裡的應用 69
4.2 XML Schema入門 70
4.2.1 XML Schema根元素 70
4.2.2 在XML中引用無命名空間的XML Schema 72
4.2.3 在XML中引用帶命名空間的XML Schema 72
4.3 XML Schema中的注釋 73
4.4 理解XML Schema的數據類型 74
4.5 XML Schema的內置類型 76
4.5.1 字符串及相關類型 78
4.5.2 數值類型 79
4.5.3 日期、時間類型 81
4.5.4 boolean類型 83
4.5.5 anyURI類型 83
4.5.6 二進制數據類型 84
4.5.7 XML Schema 1.1引入的anyAtomicType 84
4.6 使用限制派生新類型 85
4.6.1 指定基類型的兩種方式 86
4.6.2 指定類型的兩種方式 88
4.6.3 範圍約束 90
4.6.4 長度約束 90
4.6.5 精度約束 90
4.6.6 枚舉約束 91
4.6.7 正則表達式約束 92
4.6.8 空白處理 92
4.6.9 XML Schema 1.1新增的assertion約束 94
4.6.10 XML Schema 1.1新增的時區約束 95
4.7 使用<list.../>派生列表類型 96
4.7.1 定義列表類型 97
4.7.2 限制列表類型 98
4.8 使用<union.../>派生聯合類型 100
4.8.1 定義聯合類型 100
4.8.2 限制聯合類型 102
4.9 列表類型和聯合類型結合使用 103
4.10 阻止派生新的簡單類型 104
4.10.1 使用final屬性 104
4.10.2 為約束指定fixed屬性 105
4.11 合併多個XML Schema 105
4.11.1 使用include元素 106
4.11.2 使用redefine元素 107
4.11.3 使用import元素 108
4.12 XMLSpy中關於XML Schema的操作 109
4.12.1 創建新的XML Schema文檔 109
4.12.2 為XML文檔創建XML Schema 110
4.12.3 為XML文檔分配XML Schema 111
4.13 本章小結 111

第5章 XML Schema高級知識 112
5.1 使用anyType定義任意類型 113
5.2 定義複雜類型 114
5.2.1 定義複雜類型的方式 115
5.2.2 擴展簡單類型 116
5.2.3 包含屬性的兩種方式 117
5.2.4 擴展包含簡單內容的複雜類型 119
5.2.5 XML Schema 1.1改進的類型替換 120
5.2.6 限制包含簡單內容的複雜類型 122
5.2.7 限制anyType派生新的類型 123
5.2.8 XML Schema 1.1改進的all元素 126
5.2.9 使用XML Schema 1.1的斷言約束進行限制 127
5.2.10 包含子元素的兩種方式 128
5.2.11 空元素類型 131
5.2.12 混合內容類型 132
5.3 複雜類型的進一步派生 133
5.3.1 限制空元素類型 133
5.3.2 擴展空元素類型 134
5.3.3 XML Schema 1.1改進後的限制
派生 135
5.3.4 擴展包含子元素的類型 138
5.3.5 限制混合內容類型 140
5.3.6 擴展混合內容類型 142
5.4 阻止派生新的類型 143
5.5 通配符 144
5.5.1 元素通配符 144
5.5.2 屬性通配符 146
5.5.3 XML Schema 1.1對通配符的改進 147
5.6 元素替換 149
5.6.1 阻止自己被替換 151
5.6.2 阻止指定派生類型的替換 153
5.7 抽象元素和抽象類型 154
5.7.1 抽象元素 154
5.7.2 抽象類型 156
5.8 一致性約束 157
5.8.1 key約束 158
5.8.2 unique約束 160
5.8.3 keyref約束 161
5.9 元素組與屬性組 163
5.10 定義符號 165
5.11 本章小結 166
本章練習 166

第6章 命名空間 167
6.1 導入命名空間 168
6.2 XML Schema的命名空間支持 170
6.2.1 在XML Schema中使用命名空間 170
6.2.2 命名空間對XML文檔的作用 173
6.2.3 為屬性使用命名空間限定 178
6.2.4 命名空間對一致性約束的影響 180
6.2.5 局部元素和局部屬性的強制限定 181
6.3 命名空間和DTD 185
6.4 本章小結 187

第7章 使用XSLT顯示XML文檔 188
7.1 XSL簡介 189
7.1.1 兩種常用樣式單及其優勢 189
7.1.2 XSL概述 190
7.2 XSLT入門 190
7.2.1 XSLT轉換入門 191
7.2.2 使用template元素定義模板 193
7.2.3 使用apply-templates處理子節點 194
7.2.4 使用value-of輸出節點內容 197
7.2.5 匹配節點的模式 199
7.2.6 mode屬性 201
7.3 XSLT轉換分類 203
7.3.1 客戶端轉換和服務器端轉換 203
7.3.2 Xalan處理器 204
7.3.3 Saxon處理器 206
7.4 XSLT的內置模板規則 208
7.5 流程控制元素 210
7.5.1 分支處理 210
7.5.2 循環控制 212
7.5.3 排序控制 214
7.6 控制空白的處理方式 216
7.7 創建結果樹 216
7.7.1 創建元素和屬性 217
7.7.2 創建文本 222
7.7.3 創建處理指令 223
7.7.4 創建注釋 223
7.7.5 複製 224
7.7.6 輸出格式化數值 226
7.8 變量和參數 231
7.8.1 為變量和參數指定值 231
7.8.2 全域與局部的變量和參數 233
7.8.3 改變參數值 234
7.9 使用命名模板 236
7.10 包含和導入 238
7.10.1 使用import導入 238
7.10.2 使用include包含 240
7.10.3 解決模板定義衝突 241
7.11 XSLT 1.1的fallback支持 241
7.12 指定輸出格式 242
7.12.1 轉換XML文檔的相關格式 243
7.12.2 轉換HTML文檔的相關格式 244
7.13 XSLT的內置函數 245
7.13.1 使用system-property函數 245
7.13.2 使用current函數返回當前節點集 246
7.13.3 使用element-available和function-available函數 247
7.13.4 使用unparsed-entity-uri函數 247
7.13.5 使用document 函數處理多個源XML文檔 248
7.13.6 使用format-number 函數 250
7.13.7 使用key函數 252
7.13.8 使用generate-id函數 254
7.14 XSLT 2.0新增的功能 255
7.14.1 分組 255
7.14.2 多文檔輸出 258
7.14.3 字符映射 259
7.14.4 <xsl:value-of>元素的改進 260
7.14.5 數據類型綁定 261
7.14.6 正則表達式支持 262
7.14.7 用戶自定義函數 263
7.15 使用XMLSpy管理XSLT操作 264
7.16 本章小結 265
本章練習 266

第8章 XPath詳解 267
8.1 XPath語言簡介 268
8.1.1 XPath節點 268
8.1.2 XPath基本概念 269
8.1.3 節點關係 269
8.2 絕對路徑和相對路徑 270
8.2.1 路徑和步 270
8.2.2 XPath基路徑 270
8.3 XPath基礎語法 272
8.3.1 軸關係 272
8.3.2 節點測試 273
8.3.3 限定謂語 273
8.3.4 簡化寫法 274
8.4 運算符和表達式 274
8.4.1 算術運算符 275
8.4.2 比較運算符 275
8.4.3 邏輯運算符 276
8.4.4 XPath 3.x新增的字符串連接表達式 276
8.4.5 XPath 3.x新增的映射運算符 277
8.4.6 組合多個路徑表達式的運算符 277
8.5 XPath 2.0新增的表達式 277
8.5.1 for表達式 278
8.5.2 if表達式 280
8.5.3 some/every判斷表達式 281
8.6 XPath 2.0的類型支持 282
8.7 內置函數庫 283
8.7.1 字符串相關函數 283
8.7.2 數值相關函數 285
8.7.3 日期和時間相關函數 286
8.7.4 boolean值相關函數 288
8.7.5 節點相關函數 289
8.7.6 序列相關函數 290
8.7.7 XPath 3.x新增的行內函數與動態函數調用 292
8.8 本章小結 292

第9章 DOM、SAX和JAXP解析 293
9.1 DOM、SAX和JAXP概述 294
9.2 JAXP的DOM支持 299
9.2.1 XML文檔和DOM模型 299
9.2.2 DOM樹中的對象類型 301
9.2.3 DOM解析器 301
9.2.4 使用DTD驗證XML文檔 302
9.2.5 使用DOM解析XML文檔 304
9.2.6 使用DOM創建XML文檔 307
9.2.7 使用DOM修改XML文檔 309
9.2.8 解析DTD信息 310
9.2.9 DOM和命名空間 313
9.3 JAXP的SAX支持 314
9.3.1 SAX的處理機制 314
9.3.2 SAX解析器和監聽器 315
9.3.3 使用DTD驗證XML文檔的有效性 319
9.3.4 使用SAX解析XML文檔 320
9.3.5 SAX和命名空間 323
9.4 DOM和SAX的比較 326
9.5 使用XML Schema驗證XML文檔的有效性 327
9.5.1 SchemaFactory和驗證 327
9.5.2 獲取節點的類型信息 331
9.6 瀏覽器對DOM的支持 333
9.7 本章小結 335
本章練習 336

第10章 使用dom4j處理XML文檔 337
10.1 dom4j簡介 338
10.1.1 dom4j的封裝和優勢 338
10.1.2 下載和安裝dom4j 339
10.2 dom4j常用API 340
10.3 使用dom4j訪問XML文檔 341
10.3.1 驗證XML文檔的有效性 341
10.3.2 使用dom4j解析XML文檔 342
10.3.3 使用訪問者模式遍歷XML文檔 344
10.4 使用dom4j創建XML文檔 346
10.5 修改XML文檔 347
10.6 使用dom4j獲取命名空間信息 348
10.7 本章小結 350
本章練習 351

第11章 使用JDOM處理XML文檔 352
11.1 JDOM簡介 353
11.1.1 JDOM常用API 353
11.1.2 下載和安裝JDOM 354
11.2 使用JDOM訪問XML文檔的實例 355
11.2.1 驗證XML文檔的有效性 355
11.2.2 使用JDOM解析XML文檔 356
11.3 使用JDOM創建XML文檔 358
11.4 修改XML文檔 359
11.5 使用JDOM獲取命名空間信息 360
11.6 選擇dom4j還是JDOM 362
11.7 本章小結 363
本章練習 363

第12章 XQuery詳解 364
12.1 XQuery簡介 365
12.1.1 XQuery和XPath的關係 365
12.1.2 XQuery和XSLT的關係 366
12.2 使用XQuery 366
12.2.1 使用XMLSpy查看XQuery查詢結果 367
12.2.2 使用Saxon執行XQuery查詢 368
12.3 基本表達式 369
12.3.1 直接量 369
12.3.2 變量引用 369
12.3.3 圓括號表達式 369
12.3.4 上下文項表達式 369
12.3.5 函數調用 370
12.4 序列表達式 370
12.4.1 構造序列 370
12.4.2 過濾表達式 370
12.4.3 組合節點序列 371
12.5 算術表達式 372
12.6 比較表達式 373
12.6.1 值比較 373
12.6.2 通用比較 373
12.6.3 節點比較 374
12.7 邏輯表達式 374
12.8 構造器 375
12.8.1 直接構造 375
12.8.2 計算構造 375
12.9 FLWOR表達式 376
12.9.1 for、let和return子句 376
12.9.2 where子句 378
12.9.3 order by子句 378
12.10 if表達式 379
12.11 some/every判斷表達式 379
12.12 與序列類型有關的表達式 380
12.12.1 instance of 380
12.12.2 typeswitch 380
12.12.3 cast 381
12.12.4 castable 382
12.13 模塊和序言 382
12.13.1 序言 382
12.13.2 版本聲明 382
12.13.3 模塊聲明 383
12.13.4 設置器 383
12.13.5 導入設置 385
12.13.6 命名空間聲明 387
12.13.7 默認命名空間聲明 387
12.13.8 變量聲明 388
12.13.9 函數聲明 389
12.13.10 選項聲明 390
12.14 XQuery 3的數組和Map 391
12.14.1 數組支持 391
12.14.2 Map支持 392
12.14.3 數組和Map支持的“?”運算符 393
12.15 使用XQJ執行XQuery查詢 394
12.15.1 XQJ和JDBC的類似性 394
12.15.2 XQJ的編程步驟 395
12.16 本章小結 398

第13章 Web Service詳解 399
13.1 XML和Web Service 400
13.1.1 Web Service概述 400
13.1.2 Web Service平臺概述 401
13.1.3 Web Service的廣泛應用 402
13.2 SOA和雲計算 404
13.2.1 SOA和Web Service 404
13.2.2 雲計算和Web Service 405
13.3 Web Service開發 406
13.3.1 CXF概述 406
13.3.2 下載和安裝CXF 407
13.3.3 使用CXF開發Web Service 408
13.3.4 客戶端開發 413
13.3.5 複雜類型的處理 415
13.4 XML和WSDL 417
13.4.1 WSDL基本語法 418
13.4.2 portType元素 420
13.4.3 binding元素 422
13.4.4 service元素 424
13.5 XML和SOAP協議 425
13.5.1 使用攔截器 425
13.5.2 SOAP基本語法 428
13.5.3 Header元素 429
13.5.4 Body元素 430
13.5.5 Fault元素 431
13.5.6 SOAP、WSDL和UDDI 432
13.5.7 使用攔截器進行權限控制 433
13.6 整合Spring開發Web Service 436
13.6.1 在Spring中使用CXF 436
13.6.2 通過Spring啟用CXF攔截器 440
13.6.3 在Spring容器中配置Web Service客戶端 440
13.7 本章小結 443

第14章 基於XML的電子公告系統 444
14.1 系統設計 445
14.2 設計XML文檔 446
14.2.1 保存狀態的XML文檔 446
14.2.2 定義XML Schema 448
14.3 定義XSLT樣式單 450
14.3.1 為公告列表定義樣式單 450
14.3.2 為用戶評論設計樣式單 452
14.4 實現控制器 454
14.4.1 添加公告 454
14.4.2 查看評論列表 457
14.4.3 添加評論 458
14.5 本章小結 461
本章練習 461

第15章 Web Service案例:電子拍賣系統 462
15.1 系統功能簡介和架構設計 463
15.1.1 系統功能簡介 463


















15.1.2 系統架構設計 464
15.2 持久層設計 465
15.2.1 系統實體 465
15.2.2 系統E-R圖和數據表 465
15.2.3 實現Hibernate PO 467
15.2.4 管理SessionFactory 469
15.3 實現系統DAO層 470
15.3.1 實現DAO組件的基類 470
15.3.2 實現系統DAO組件 473
15.3.3 配置系統DAO組件 476
15.4 實現業務邏輯層 477
15.4.1 定義業務邏輯組件接口 477
15.4.2 依賴注入DAO組件 479
15.4.3 業務邏輯組件中的異常處理 480
15.4.4 處理用戶競價 481
15.4.5 判斷拍賣物品狀態 483
15.4.6 事務管理 485
15.4.7 配置業務層組件 486
15.5 使用CXF提供Web Service 488
15.5.1 啟用CXF支持 488
15.5.2 實現Web Service組件 489
15.5.3 測試Web Service 495
15.6 本章小結 497
本章練習

您曾經瀏覽過的商品

購物須知

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

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

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

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

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

優惠價:87 517
缺貨無法訂購

暢銷榜

客服中心

收藏

會員專區