加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

XML01

发布时间:2020-12-16 05:00:30 所属栏目:百科 来源:网络整理
导读:一、XML概述(记住) XML是指可扩展标记语言(eXtensible Markup Language),它是一种标记语言 作用: 它被设计的宗旨是用于表示数据的。 XML还经常作为配置文件 二、XML的语法(记住) 1、XML的声明 必须出现在第一行 最简单的形式:?xml version="1.0"? encodi
一、XML概述(记住)
XML是指可扩展标记语言(eXtensible Markup Language),它是一种标记语言
作用:
它被设计的宗旨是用于表示数据的。
XML还经常作为配置文件
二、XML的语法(记住)
1、XML的声明
必须出现在第一行
最简单的形式:<?xml version="1.0"?>
encoding:指示解析器在解析XML中数据时使用的编码,默认是UTF-8
2、CDATA区:
作用:把标签当做普通的文本对待
语法<![CDATA[文本内容]]>
三、XML的约束(知道)
约束就是一个规定
格式良好的XML:遵循XML语法的XML
有效的XML:遵循约束文档的XML

四、DTD约束(理解)
1、DTD(Document Type Definition):文档类型定义。
2、DTD如果是在一个单独的文件中定义的,文件保存时必须使用UTF-8
3、如何在xml中引入外部的dtd文档(必须会)
3.1dtd文档在本地:<!DOCTYPE 根元素 SYSTEM "DTD文档路径">
3.2dtd文档不在本地:<!DOCTYPE 根元素 PUBLIC "DTD名称" "DTD文档的URL">

4、看懂DTD文档

5、一个简单的DTD约束实例:

* book.dtd:

<!ELEMENT 书架 (书+)>

<!ELEMENT 书 (书名,作者,售价)>

<!ELEMENT 书名 (#PCDATA)>

<!ELEMENT 作者 (#PCDATA)>

<!ELEMENT 售价 (#PCDATA)>
<!ATTLIST 书
出版社 (传智|黑马) #REQUIRED
ISBN ID #IMPLIED
某个属性 CDATA #FIXED "不知道"
再来一个属性 CDATA "默认值">
<!ENTITY copyright "黑马训练营所有">

* book.xml:

<?xml version="1.0" encoding="gbk"?>
<!DOCTYPE 书架 SYSTEM "book.dtd">
<书架>
<书 出版社="传智" ISBN="a1">
<书名>葵花宝典</书名>
<作者>何敬轩</作者>
<售价>1</售价>
</书>
<书 出版社="黑马" ISBN="a2" 某个属性="不知道">
<书名>金瓶梅</书名>
<作者>&copyright;</作者>
<售价>2</售价>
</书>
</书架>

练习:PPT 36 DTD实例,第一个

五、XML的数据解析
DOM和SAX的优缺点

六、DOM解析

Jaxp DOM解析的基本操作(练习:PPT 44 7个练习)


七、SAX解析
Jaxp SAX解析(练习:把书的信息封装到JavaBean中)
八、DOM4J操作
基本操作(练习:PPT 44 7个练习,不要采用main方法进行测试,请使用单元测试)

八、JUnit单元测试和debug调试


一、Xpath(会查文档,简单有些概念和印象)
二、Dom4J综合案例(练习)
三、Schema约束:目标,根据Schema写出xml文档来,难点在于xml文件如何引入schema约束

xml中引入schema约束的步骤:(王氏独家)
1、查看schema文档,找到根元素,在xml中写出来
<?xml version="1.0" encoding="UTF-8"?>
<书架>

</书架>
2、根元素来自哪个名称空间。使用xmlns指令来声明
名称空间是在schema中定义的,就是targetNamespace的值

<?xml version="1.0" encoding="UTF-8"?>
<itheima:书架 xmlns:itheima="http://www.itheima.com/book">

</itheima:书架>
3、引入的名称空间跟哪个xsd文件对应?
使用schemaLocation来指定:两个取值:第一个为名称空间 第二个为xsd文件的路径

<?xml version="1.0" encoding="UTF-8"?>
<itheima:书架 xmlns:itheima="http://www.itheima.com/book"
schemaLocation="http://www.itheima.com/book book.xsd">

</itheima:书架>

4、schemaLocation哪里来的?它来自一个标准的名称空间

<?xml version="1.0" encoding="UTF-8"?>
<itheima:书架 xmlns:itheima="http://www.itheima.com/book"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.itheima.com/book book.xsd">

</itheima:书架>

5、只要以上4部搞好了,对于子标签eclipse就有提示了


* 一个简单的schemal约束实例:

1、book.xsd

<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.itheima.com/book"
elementFormDefault="qualified">
<element name='书架' >
<complexType>
<sequence maxOccurs='unbounded' >
<element name='书' >
<complexType>
<sequence>
<element name='书名' type='string' />
<element name='作者' type='string' />
<element name='售价' type='string' />
</sequence>
</complexType>
</element>
</sequence>
</complexType>
</element>
</schema>


2、book.xml

<?xml version="1.0" encoding="UTF-8"?> <书架> <书 出版社="黑马"> <书名>Java就业培训教程</书名> <作者>张孝祥</作者> <批发价>58.00元</批发价> <售价>39.00元</售价> <内部价>48.00元</内部价> </书> <书 出版社="传智"> <书名>葵花宝典</书名> <作者>陈浩</作者> <售价>0.50元</售价> </书> </书架>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读