网站首页 软件下载 游戏下载 翻译软件 电子书下载 电影下载 电视剧下载 教程攻略
书名 | 疯狂XML讲义 |
分类 | 人文社科-社会科学-语言文字 |
作者 | 李刚编 |
出版社 | 电子工业出版社 |
下载 | ![]() |
简介 | 作者简介 李刚,十余年软件开发从业经验,疯狂软件教育中心教学总监。疯狂Java实训营创始人,疯狂Java体系原创图书作者。广东技术师范学院计算机科学系兼职副教授,CSDN特邀讲师。培训的学生已在腾讯、阿里、华为、IBM、网易、唯品会、电信盈科等名企就职。靠前知名高端IT技术图书作家,已出版《疯狂Java讲义》《疯狂Python讲义》《疯狂Android讲义》《轻量级Java EE企业应用实战》等著作。其中疯狂Java体系图书均已沉淀多年,赢得极高的市场认同,多次重印,多部著作印刷数量超过10万册,并被多所“985”“211”院校选作教材,部分图书已被翻译成繁体中文版,授权到中国台湾地区地区。 目录 章XML概述1 1.1XML的起源2 1.1.1标记语言2 1.1.2XML的基本概念3 1.1.3XML和HTML4 1.2XML的优势4 1.2.1简单易用的标记语言4 1.2.2严格的格式5 1.2.3数据逻辑和显示逻辑分离6 1.3XML和JavaEE6 1.3.1配置描述6 1.3.2简化的数据交换8 1.3.3WebService8 1.4XML的编辑工具9 1.4.1普通文本编辑工具9 1.4.2XMLSpy简介9 1.4.3使用XMLSpy编辑XML文档10 1.5XML的竞争对手11 1.5.1注解11 1.5.2轻量级的数据交换格式——JSON13 1.6本章小结16 第2章XML文档规则17 2.1XML文档的分类18 2.1.1格式不好的XML文档18 2.1.2格式良好但无效的XML文档19 2.1.3有效的XML文档20 2.2XML文档的整体结构21 2.2.1有且仅有一个根元素21 2.2.2元素必须合理结束22 2.2.3元素之间必须合理嵌套22 2.2.4元素的属性必须有值23 2.3XML声明25 2.4XML元素的基本规则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.8W3C对于属性的使用建议33 2.9换行处理35 2.10本章小结35 本章练习35 第3章DTD详解36 3.1XML语义约束37 3.2引入DTD38 3.2.1内部DTD38 3.2.2外部DTD39 3.2.3公用DTD40 3.3DTD文档概览41 3.3.1DTD文档的结构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.2ENTITY和ENTITIES类型的属性63 3.8.3NOTATION类型的属性64 3.9使用XMLSpy创建DTD64 3.10本章小结66 本章练习66 第4章XML Schema基本语法67 4.1DTD和XML Schema68 4.1.1XML Schema概述及其优势68 4.1.2XML Schema在JavaEE里的应用69 4.2XML Schema入门70 4.2.1XML Schema根元素70 4.2.2在XML中引用无命名空间的XML Schema72 4.2.3在XML中引用带命名空间的XML Schema72 4.3XML Schema中的注释73 4.4理解XML Schema的数据类型74 4.5XML Schema的内置类型76 4.5.1字符串及相关类型78 4.5.2数值类型79 4.5.3日期、时间类型81 4.5.4boolean类型83 4.5.5anyURI类型83 4.5.6二进制数据类型84 4.5.7XML Schema 1.1引入的anyAtomicType84 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.9XML Schema 1.1新增的assertion约束94 4.6.10XML 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 Schema105 4.11.1使用include元素106 4.11.2使用redefine元素107 4.11.3使用import元素108 4.12XMLSpy中关于XML Schema的操作109 4.12.1创建新的XML Schema文档109 4.12.2为XML文档创建XML Schema110 4.12.3为XML文档分配XML Schema111 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.5XML Schema 1.1改进的类型替换120 5.2.6限制包含简单内容的复杂类型122 5.2.7限制anyType派生新的类型123 5.2.8XML 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.3XML 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.3XML 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.1key约束158 5.8.2unique约束160 5.8.3keyref约束161 5.9元素组与属性组163 5.10定义符号165 5.11本章小结166 本章练习166 第6章命名空间167 6.1导入命名空间168 6.2XML 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命名空间和DTD185 6.4本章小结187 第7章使用XSLT显示XML文档188 7.1XSL简介189 7.1.1两种常用样式单及其优势189 7.1.2XSL概述190 7.2XSLT入门190 7.2.1XSLT转换入门191 7.2.2使用template元素定义模板193 7.2.3使用apply-templates处理子节点194 7.2.4使用value-of输出节点内容197 7.2.5匹配节点的模式199 7.2.6mode属性201 7.3XSLT转换分类203 7.3.1客户端转换和服务器端转换203 7.3.2Xalan处理器204 7.3.3Saxon处理器206 7.4XSLT的内置模板规则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.11XSLT1.1的fallback支持241 7.12指定输出格式242 7.12.1转换XML文档的相关格式243 7.12.2转换HTML文档的相关格式244 7.13XSLT的内置函数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.14XSLT2.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.1XPath语言简介268 8.1.1XPath节点268 8.1.2XPath基本概念269 8.1.3节点关系269 8.2绝对路径和相对路径270 8.2.1路径和步270 8.2.2XPath基路径270 8.3XPath基础语法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.4XPath 3.x新增的字符串连接表达式276 8.4.5XPath 3.x新增的映射运算符277 8.4.6组合多个路径表达式的运算符277 8.5XPath 2.0新增的表达式277 8.5.1for表达式278 8.5.2if表达式280 8.5.3some/every判断表达式281 8.6XPath 2.0的类型支持282 8.7内置函数库283 8.7.1字符串相关函数283 8.7.2数值相关函数285 8.7.3日期和时间相关函数286 8.7.4boolean值相关函数288 8.7.5节点相关函数289 8.7.6序列相关函数290 8.7.7XPath 3.x新增的行内函数与动态函数调用292 8.8本章小结292 第9章DOM、SAX和JAXP解析293 9.1DOM、SAX和JAXP概述294 9.2JAXP的DOM支持299 9.2.1XML文档和DOM模型299 9.2.2DOM树中的对象类型301 9.2.3DOM解析器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.9DOM和命名空间313 9.3JAXP的SAX支持314 9.3.1SAX的处理机制314 9.3.2SAX解析器和监听器315 9.3.3使用DTD验证XML文档的有效性319 9.3.4使用SAX解析XML文档320 9.3.5SAX和命名空间323 9.4DOM和SAX的比较326 9.5使用XML Schema验证XML文档的有效性327 9.5.1SchemaFactory和验证327 9.5.2获取节点的类型信息331 9.6浏览器对DOM的支持333 9.7本章小结335 本章练习336 0章使用dom4j处理XML文档337 10.1dom4j简介338 10.1.1dom4j的封装和优势338 10.1.2下载和安装dom4j339 10.2dom4j常用API340 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 1章使用JDOM处理XML文档352 11.1JDOM简介353 11.1.1JDOM常用API353 11.1.2下载和安装JDOM354 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还是JDOM362 11.7本章小结363 本章练习363 2章XQuery详解364 12.1XQuery简介365 12.1.1XQuery和XPath的关系365 12.1.2XQuery和XSLT的关系366 12.2使用XQuery366 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.9FLWOR表达式376 12.9.1for、let和return子句376 12.9.2where子句378 12.9.3orderby子句378 12.10if表达式379 12.11some/every判断表达式379 12.12与序列类型有关的表达式380 12.12.1instanceof380 12.12.2typeswitch380 12.12.3cast381 12.12.4castable382 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.14XQuery3的数组和Map391 12.14.1数组支持391 12.14.2Map支持392 12.14.3数组和Map支持的“?”运算符393 12.15使用XQJ执行XQuery查询394 12.15.1XQJ和JDBC的类似性394 12.15.2XQJ的编程步骤395 12.16本章小结398 3章Web Service详解399 13.1XML和Web Service400 13.1.1Web Service概述400 13.1.2Web Service平台概述401 13.1.3Web Service的广泛应用402 13.2SOA和云计算404 13.2.1SOA和Web Service404 13.2.2云计算和Web Service405 13.3Web Service开发406 13.3.1CXF概述406 13.3.2下载和安装CXF407 13.3.3使用CXF开发Web Service408 13.3.4客户端开发413 13.3.5复杂类型的处理415 13.4XML和WSDL417 13.4.1WSDL基本语法418 13.4.2portType元素420 13.4.3binding元素422 13.4.4service元素424 13.5XML和SOAP协议425 13.5.1使用拦截器425 13.5.2SOAP基本语法428 13.5.3Header元素429 13.5.4Body元素430 13.5.5Fault元素431 13.5.6SOAP、WSDL和UDDI432 13.5.7使用拦截器进行权限控制433 13.6整合Spring开发Web Service436 13.6.1在Spring中使用CXF436 13.6.2通过Spring启用CXF拦截器440 13.6.3在Spring容器中配置Web Service客户端440 13.7本章小结443 4章基于XML的电子公告系统444 14.1系统设计445 14.2设计XML文档446 14.2.1保存状态的XML文档446 14.2.2定义XML Schema448 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 5章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 PO467 15.2.4管理SessionFactory469 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 Service488 15.5.1启用CXF支持488 15.5.2实现Web Service组件489 15.5.3测试Web Service495 15.6本章小结497 本章练习 内容推荐 主要分为五个部分。第一部分介绍了XML、DTD、XML Schema等基础知识,这些知识主要教读者如何定义有效的XML文档,这部分内容是深入学习后面知识的基础,也是每个使用XML的开发者都应该掌握的基础。第二部分介绍了CSS、XSLT和XPath等知识,通过使用CSS或XSLT,可直接将XML文档 |
随便看 |
|
霍普软件下载网电子书栏目提供海量电子书在线免费阅读及下载。