注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網(wǎng)絡網(wǎng)絡與數(shù)據(jù)通信網(wǎng)絡服務瘋狂XML講義(第3版)

瘋狂XML講義(第3版)

瘋狂XML講義(第3版)

定 價:¥99.00

作 者: 李剛
出版社: 電子工業(yè)出版社
叢編項:
標 簽: 暫缺

ISBN: 9787121375026 出版時間: 2019-10-01 包裝:
開本: 16開 頁數(shù): 508 字數(shù):  

內容簡介

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

作者簡介

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

圖書目錄

第1章 XML概述\t1
1.1 XML的起源\t2
1.1.1 標記語言\t2
1.1.2 XML的基本概念\t3
1.1.3 XML和HTML\t4
1.2 XML的優(yōu)勢\t4
1.2.1 簡單易用的標記語言\t4
1.2.2 嚴格的格式\t5
1.2.3 數(shù)據(jù)邏輯和顯示邏輯分離\t6
1.3 XML和Java EE\t6
1.3.1 配置描述\t6
1.3.2 簡化的數(shù)據(jù)交換\t8
1.3.3 Web Service\t8
1.4 XML的編輯工具\t9
1.4.1 普通文本編輯工具\t9
1.4.2 XMLSpy簡介\t9
1.4.3 使用XMLSpy編輯XML文檔\t10
1.5 XML的競爭對手\t11
1.5.1 注解\t11
1.5.2 輕量級的數(shù)據(jù)交換格式―JSON\t13
1.6 本章小結\t16
第2章 XML文檔規(guī)則\t17
2.1 XML文檔的分類\t18
2.1.1 格式不好的XML文檔\t18
2.1.2 格式良好但無效的XML文檔\t19
2.1.3 有效的XML文檔\t20
2.2 XML文檔的整體結構\t21
2.2.1 有且僅有一個根元素\t21
2.2.2 元素必須合理結束\t22
2.2.3 元素之間必須合理嵌套\t22
2.2.4 元素的屬性必須有值\t23
2.3 XML聲明\t25
2.4 XML元素的基本規(guī)則\t27
2.4.1 合法的標簽名\t27
2.4.2 嵌套子元素\t28
2.4.3 空元素\t28
2.5 字符數(shù)據(jù)\t29
2.5.1 使用實體引用\t30
2.5.2 使用CDATA標記\t30
2.6 注釋\t31
2.7 處理指令\t32
2.8 W3C對于屬性的使用建議\t33
2.9 換行處理\t35
2.10 本章小結\t35
本章練習\t35
第3章 DTD詳解\t36
3.1 XML語義約束\t37
3.2 引入DTD\t38
3.2.1 內部DTD\t38
3.2.2 外部DTD\t39
3.2.3 公用DTD\t40
3.3 DTD文檔概覽\t41
3.3.1 DTD文檔的結構\t41
3.3.2 驗證XML文檔的有效性\t41
3.4 定義元素\t42
3.4.1 定義任意類型的元素\t42
3.4.2 定義空元素\t44
3.4.3 定義字符串內容的元素\t44
3.4.4 定義混合內容的元素\t45
3.5 定義子元素\t46
3.5.1 有序的子元素\t46
3.5.2 互斥的子元素\t47
3.5.3 子元素出現(xiàn)的頻率\t48
3.5.4 組合子元素\t49
3.5.5 無序的子元素\t51
3.6 定義元素屬性\t52
3.6.1 對屬性的約束規(guī)則\t53
3.6.2 定義屬性類型\t55
3.7 定義實體\t57
3.7.1 定義普通實體\t58
3.7.2 定義參數(shù)實體\t59
3.7.3 外部實體\t60
3.7.4 外部參數(shù)實體\t61
3.8 定義符號\t61
3.8.1 未解析實體\t62
3.8.2 ENTITY和ENTITIES類型的屬性\t63
3.8.3 NOTATION類型的屬性\t64
3.9 使用XMLSpy創(chuàng)建DTD\t64
3.10 本章小結\t66
本章練習\t66
第4章 XML Schema基本語法\t67
4.1 DTD和XML Schema\t68
4.1.1 XML Schema概述及其優(yōu)勢\t68
4.1.2 XML Schema在Java EE里的應用\t69
4.2 XML Schema入門\t70
4.2.1 XML Schema根元素\t70
4.2.2 在XML中引用無命名空間的XML Schema\t72
4.2.3 在XML中引用帶命名空間的XML Schema\t72
4.3 XML Schema中的注釋\t73
4.4 理解XML Schema的數(shù)據(jù)類型\t74
4.5 XML Schema的內置類型\t76
4.5.1 字符串及相關類型\t78
4.5.2 數(shù)值類型\t79
4.5.3 日期、時間類型\t81
4.5.4 boolean類型\t83
4.5.5 anyURI類型\t83
4.5.6 二進制數(shù)據(jù)類型\t84
4.5.7 XML Schema 1.1引入的anyAtomicType\t84
4.6 使用限制派生新類型\t85
4.6.1 指定基類型的兩種方式\t86
4.6.2 指定類型的兩種方式\t88
4.6.3 范圍約束\t90
4.6.4 長度約束\t90
4.6.5 精度約束\t90
4.6.6 枚舉約束\t91
4.6.7 正則表達式約束\t92
4.6.8 空白處理\t92
4.6.9 XML Schema 1.1新增的assertion約束\t94
4.6.10 XML Schema 1.1新增的時區(qū)約束\t95
4.7 使用<list.../>派生列表類型\t96
4.7.1 定義列表類型\t97
4.7.2 限制列表類型\t98
4.8 使用<union.../>派生聯(lián)合類型\t100
4.8.1 定義聯(lián)合類型\t100
4.8.2 限制聯(lián)合類型\t102
4.9 列表類型和聯(lián)合類型結合使用\t103
4.10 阻止派生新的簡單類型\t104
4.10.1 使用final屬性\t104
4.10.2 為約束指定fixed屬性\t105
4.11 合并多個XML Schema\t105
4.11.1 使用include元素\t106
4.11.2 使用redefine元素\t107
4.11.3 使用import元素\t108
4.12 XMLSpy中關于XML Schema的操作\t109
4.12.1 創(chuàng)建新的XML Schema文檔\t109
4.12.2 為XML文檔創(chuàng)建XML Schema\t110
4.12.3 為XML文檔分配XML Schema\t111
4.13 本章小結\t111
第5章 XML Schema高級知識\t112
5.1 使用anyType定義任意類型\t113
5.2 定義復雜類型\t114
5.2.1 定義復雜類型的方式\t115
5.2.2 擴展簡單類型\t116
5.2.3 包含屬性的兩種方式\t117
5.2.4 擴展包含簡單內容的復雜類型\t119
5.2.5 XML Schema 1.1改進的類型替換\t120
5.2.6 限制包含簡單內容的復雜類型\t122
5.2.7 限制anyType派生新的類型\t123
5.2.8 XML Schema 1.1改進的all元素\t126
5.2.9 使用XML Schema 1.1的斷言約束進行限制\t127
5.2.10 包含子元素的兩種方式\t128
5.2.11 空元素類型\t131
5.2.12 混合內容類型\t132
5.3 復雜類型的進一步派生\t133
5.3.1 限制空元素類型\t133
5.3.2 擴展空元素類型\t134
5.3.3 XML Schema 1.1改進后的限制
派生\t135
5.3.4 擴展包含子元素的類型\t138
5.3.5 限制混合內容類型\t140
5.3.6 擴展混合內容類型\t142
5.4 阻止派生新的類型\t143
5.5 通配符\t144
5.5.1 元素通配符\t144
5.5.2 屬性通配符\t146
5.5.3 XML Schema 1.1對通配符的改進\t147
5.6 元素替換\t149
5.6.1 阻止自己被替換\t151
5.6.2 阻止指定派生類型的替換\t153
5.7 抽象元素和抽象類型\t154
5.7.1 抽象元素\t154
5.7.2 抽象類型\t156
5.8 一致性約束\t157
5.8.1 key約束\t158
5.8.2 unique約束\t160
5.8.3 keyref約束\t161
5.9 元素組與屬性組\t163
5.10 定義符號\t165
5.11 本章小結\t166
本章練習\t166
第6章 命名空間\t167
6.1 導入命名空間\t168
6.2 XML Schema的命名空間支持\t170
6.2.1 在XML Schema中使用命名空間\t170
6.2.2 命名空間對XML文檔的作用\t173
6.2.3 為屬性使用命名空間限定\t178
6.2.4 命名空間對一致性約束的影響\t180
6.2.5 局部元素和局部屬性的強制限定\t181
6.3 命名空間和DTD\t185
6.4 本章小結\t187
第7章 使用XSLT顯示XML文檔\t188
7.1 XSL簡介\t189
7.1.1 兩種常用樣式單及其優(yōu)勢\t189
7.1.2 XSL概述\t190
7.2 XSLT入門\t190
7.2.1 XSLT轉換入門\t191
7.2.2 使用template元素定義模板\t193
7.2.3 使用apply-templates處理子節(jié)點\t194
7.2.4 使用value-of輸出節(jié)點內容\t197
7.2.5 匹配節(jié)點的模式\t199
7.2.6 mode屬性\t201
7.3 XSLT轉換分類\t203
7.3.1 客戶端轉換和服務器端轉換\t203
7.3.2 Xalan處理器\t204
7.3.3 Saxon處理器\t206
7.4 XSLT的內置模板規(guī)則\t208
7.5 流程控制元素\t210
7.5.1 分支處理\t210
7.5.2 循環(huán)控制\t212
7.5.3 排序控制\t214
7.6 控制空白的處理方式\t216
7.7 創(chuàng)建結果樹\t216
7.7.1 創(chuàng)建元素和屬性\t217
7.7.2 創(chuàng)建文本\t222
7.7.3 創(chuàng)建處理指令\t223
7.7.4 創(chuàng)建注釋\t223
7.7.5 復制\t224
7.7.6 輸出格式化數(shù)值\t226
7.8 變量和參數(shù)\t231
7.8.1 為變量和參數(shù)指定值\t231
7.8.2 全局與局部的變量和參數(shù)\t233
7.8.3 改變參數(shù)值\t234
7.9 使用命名模板\t236
7.10 包含和導入\t238
7.10.1 使用import導入\t238
7.10.2 使用include包含\t240
7.10.3 解決模板定義沖突\t241
7.11 XSLT 1.1的fallback支持\t241
7.12 指定輸出格式\t242
7.12.1 轉換XML文檔的相關格式\t243
7.12.2 轉換HTML文檔的相關格式\t244
7.13 XSLT的內置函數(shù)\t245
7.13.1 使用system-property函數(shù)\t245
7.13.2 使用current函數(shù)返回當前節(jié)點集\t246
7.13.3 使用element-available和function-available函數(shù)\t247
7.13.4 使用unparsed-entity-uri函數(shù)\t 247
7.13.5 使用document 函數(shù)處理多個源XML文檔\t 248
7.13.6 使用format-number 函數(shù)\t250
7.13.7 使用key函數(shù)\t252
7.13.8 使用generate-id函數(shù)\t254
7.14 XSLT 2.0新增的功能\t255
7.14.1 分組\t255
7.14.2 多文檔輸出\t258
7.14.3 字符映射\t259
7.14.4?。紉sl:value-of>元素的改進\t260
7.14.5 數(shù)據(jù)類型綁定\t261
7.14.6 正則表達式支持\t262
7.14.7 用戶自定義函數(shù)\t263
7.15 使用XMLSpy管理XSLT操作\t264
7.16 本章小結\t265
本章練習\t266
第8章 XPath詳解\t267
8.1 XPath語言簡介\t268
8.1.1 XPath節(jié)點\t268
8.1.2 XPath基本概念\t269
8.1.3 節(jié)點關系\t269
8.2 絕對路徑和相對路徑\t270
8.2.1 路徑和步\t270
8.2.2 XPath基路徑\t270
8.3 XPath基礎語法\t272
8.3.1 軸關系\t272
8.3.2 節(jié)點測試\t273
8.3.3 限定謂語\t273
8.3.4 簡化寫法\t274
8.4 運算符和表達式\t274
8.4.1 算術運算符\t275
8.4.2 比較運算符\t275
8.4.3 邏輯運算符\t276
8.4.4 XPath 3.x新增的字符串連接表達式\t276
8.4.5 XPath 3.x新增的映射運算符\t277
8.4.6 組合多個路徑表達式的運算符\t277
8.5 XPath 2.0新增的表達式\t277
8.5.1 for表達式\t278
8.5.2 if表達式\t280
8.5.3 some/every判斷表達式\t281
8.6 XPath 2.0的類型支持\t282
8.7 內置函數(shù)庫\t283
8.7.1 字符串相關函數(shù)\t283
8.7.2 數(shù)值相關函數(shù)\t285
8.7.3 日期和時間相關函數(shù)\t286
8.7.4 boolean值相關函數(shù)\t288
8.7.5 節(jié)點相關函數(shù)\t289
8.7.6 序列相關函數(shù)\t290
8.7.7 XPath 3.x新增的行內函數(shù)與動態(tài)函數(shù)調用\t292
8.8 本章小結\t292
第9章 DOM、SAX和JAXP解析\t293
9.1 DOM、SAX和JAXP概述\t294
9.2 JAXP的DOM支持\t299
9.2.1 XML文檔和DOM模型\t299
9.2.2 DOM樹中的對象類型\t301
9.2.3 DOM解析器\t301
9.2.4 使用DTD驗證XML文檔\t302
9.2.5 使用DOM解析XML文檔\t304
9.2.6 使用DOM創(chuàng)建XML文檔\t307
9.2.7 使用DOM修改XML文檔\t309
9.2.8 解析DTD信息\t310
9.2.9 DOM和命名空間\t313
9.3 JAXP的SAX支持\t314
9.3.1 SAX的處理機制\t314
9.3.2 SAX解析器和監(jiān)聽器\t315
9.3.3 使用DTD驗證XML文檔的有效性\t319
9.3.4 使用SAX解析XML文檔\t320
9.3.5 SAX和命名空間\t323
9.4 DOM和SAX的比較\t326
9.5 使用XML Schema驗證XML文檔的有效性\t327
9.5.1 SchemaFactory和驗證\t327
9.5.2 獲取節(jié)點的類型信息\t331
9.6 瀏覽器對DOM的支持\t333
9.7 本章小結\t335
本章練習\t336
第10章 使用dom4j處理XML文檔\t337
10.1 dom4j簡介\t338
10.1.1 dom4j的封裝和優(yōu)勢\t338
10.1.2 下載和安裝dom4j\t339
10.2 dom4j常用API\t340
10.3 使用dom4j訪問XML文檔\t341
10.3.1 驗證XML文檔的有效性\t341
10.3.2 使用dom4j解析XML文檔\t342
10.3.3 使用訪問者模式遍歷XML文檔\t344
10.4 使用dom4j創(chuàng)建XML文檔\t346
10.5 修改XML文檔\t347
10.6 使用dom4j獲取命名空間信息\t348
10.7 本章小結\t350
本章練習\t351
第11章 使用JDOM處理XML文檔\t352
11.1 JDOM簡介\t353
11.1.1 JDOM常用API\t353
11.1.2 下載和安裝JDOM\t354
11.2 使用JDOM訪問XML文檔的實例\t355
11.2.1 驗證XML文檔的有效性\t355
11.2.2 使用JDOM解析XML文檔\t356
11.3 使用JDOM創(chuàng)建XML文檔\t358
11.4 修改XML文檔\t359
11.5 使用JDOM獲取命名空間信息\t360
11.6 選擇dom4j還是JDOM\t362
11.7 本章小結\t363
本章練習\t363
第12章 XQuery詳解\t364
12.1 XQuery簡介\t365
12.1.1 XQuery和XPath的關系\t365
12.1.2 XQuery和XSLT的關系\t366
12.2 使用XQuery\t366
12.2.1 使用XMLSpy查看XQuery查詢結果\t367
12.2.2 使用Saxon執(zhí)行XQuery查詢\t368
12.3 基本表達式\t369
12.3.1 直接量\t369
12.3.2 變量引用\t369
12.3.3 圓括號表達式\t369
12.3.4 上下文項表達式\t369
12.3.5 函數(shù)調用\t370
12.4 序列表達式\t370
12.4.1 構造序列\(zhòng)t370
12.4.2 過濾表達式\t370
12.4.3 組合節(jié)點序列\(zhòng)t371
12.5 算術表達式\t372
12.6 比較表達式\t373
12.6.1 值比較\t373
12.6.2 通用比較\t373
12.6.3 節(jié)點比較\t374
12.7 邏輯表達式\t374
12.8 構造器\t375
12.8.1 直接構造\t375
12.8.2 計算構造\t375
12.9 FLWOR表達式\t376
12.9.1 for、let和return子句\t376
12.9.2 where子句\t378
12.9.3 order by子句\t378
12.10 if表達式\t379
12.11 some/every判斷表達式\t379
12.12 與序列類型有關的表達式\t380
12.12.1 instance of\t380
12.12.2 typeswitch\t380
12.12.3 cast\t381
12.12.4 castable\t382
12.13 模塊和序言\t382
12.13.1 序言\t382
12.13.2 版本聲明\t382
12.13.3 模塊聲明\t383
12.13.4 設置器\t383
12.13.5 導入設置\t385
12.13.6 命名空間聲明\t387
12.13.7 默認命名空間聲明\t387
12.13.8 變量聲明\t388
12.13.9 函數(shù)聲明\t389
12.13.10 選項聲明\t390
12.14 XQuery 3的數(shù)組和Map\t391
12.14.1 數(shù)組支持\t391
12.14.2 Map支持\t392
12.14.3 數(shù)組和Map支持的“?”運算符\t393
12.15 使用XQJ執(zhí)行XQuery查詢\t394
12.15.1 XQJ和JDBC的類似性\t394
12.15.2 XQJ的編程步驟\t395
12.16 本章小結\t398
第13章 Web Service詳解\t399
13.1 XML和Web Service\t400
13.1.1 Web Service概述\t400
13.1.2 Web Service平臺概述\t401
13.1.3 Web Service的廣泛應用\t402
13.2 SOA和云計算\t404
13.2.1 SOA和Web Service\t404
13.2.2 云計算和Web Service\t405
13.3 Web Service開發(fā)\t406
13.3.1 CXF概述\t406
13.3.2 下載和安裝CXF\t407
13.3.3 使用CXF開發(fā)Web Service\t408
13.3.4 客戶端開發(fā)\t413
13.3.5 復雜類型的處理\t415
13.4 XML和WSDL\t417
13.4.1 WSDL基本語法\t418
13.4.2 portType元素\t420
13.4.3 binding元素\t422
13.4.4 service元素\t424
13.5 XML和SOAP協(xié)議\t425
13.5.1 使用攔截器\t425
13.5.2 SOAP基本語法\t428
13.5.3 Header元素\t429
13.5.4 Body元素\t430
13.5.5 Fault元素\t431
13.5.6 SOAP、WSDL和UDDI\t432
13.5.7 使用攔截器進行權限控制\t433
13.6 整合Spring開發(fā)Web Service\t436
13.6.1 在Spring中使用CXF\t436
13.6.2 通過Spring啟用CXF攔截器\t440
13.6.3 在Spring容器中配置Web Service客戶端\t440
13.7 本章小結\t443
第14章 基于XML的電子公告系統(tǒng)\t444
14.1 系統(tǒng)設計\t445
14.2 設計XML文檔\t446
14.2.1 保存狀態(tài)的XML文檔\t446
14.2.2 定義XML Schema\t448
14.3 定義XSLT樣式單\t450
14.3.1 為公告列表定義樣式單\t450
14.3.2 為用戶評論設計樣式單\t452
14.4 實現(xiàn)控制器\t454
14.4.1 添加公告\t454
14.4.2 查看評論列表\t457
14.4.3 添加評論\t458
14.5 本章小結\t461
本章練習\t461
第15章 Web Service案例:電子拍賣系統(tǒng)\t462
15.1 系統(tǒng)功能簡介和架構設計\t463
15.1.1 系統(tǒng)功能簡介\t463









15.1.2 系統(tǒng)架構設計\t464
15.2 持久層設計\t465
15.2.1 系統(tǒng)實體\t465
15.2.2 系統(tǒng)E-R圖和數(shù)據(jù)表\t465
15.2.3 實現(xiàn)Hibernate PO\t467
15.2.4 管理SessionFactory\t469
15.3 實現(xiàn)系統(tǒng)DAO層\t470
15.3.1 實現(xiàn)DAO組件的基類\t470
15.3.2 實現(xiàn)系統(tǒng)DAO組件\t473
15.3.3 配置系統(tǒng)DAO組件\t476
15.4 實現(xiàn)業(yè)務邏輯層\t477
15.4.1 定義業(yè)務邏輯組件接口\t477
15.4.2 依賴注入DAO組件\t479
15.4.3 業(yè)務邏輯組件中的異常處理\t480
15.4.4 處理用戶競價\t481
15.4.5 判斷拍賣物品狀態(tài)\t483
15.4.6 事務管理\t485
15.4.7 配置業(yè)務層組件\t486
15.5 使用CXF提供Web Service\t488
15.5.1 啟用CXF支持\t488
15.5.2 實現(xiàn)Web Service組件\t489
15.5.3 測試Web Service\t495
15.6 本章小結\t497
本章練習

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號