XML-全集

xml是可扩展的标记语言,结构性,传输性,方便开发者开发
html是超文本的标记语言,观赏性,给用户看的

XML作用如下:
1、容器:可以用来保存数据
2、文件:可以用来做配置文件
3、传输:可以用来做数据传输载体

文档声明

<?xml version="1.0" ? encoding="gbk" ? standalone="no" ?>
encoding:解析xml中的文字的时候,使用什么编码来翻译
standalone:no-该文档依赖关联其他文档
如果想让xml正常显示中文,有两种解决办法:
1、让encoding设置GBK
2、让encoding设置GB2312

注释

<!--XML注释-->

非法字符

XML中一些字符不能直接表示,需要用特殊的字符表示。
<          &lt;
&          &amp;

XML的解析方式

解析 XML 文件一般来说有两种底层形式:DOM+SAX
1、DOM:把整个xml全部读取到内存中,形成树状结构,可以进行增删。
如果xml特别大,将造成内存溢出。
2、SAX:读取一行,解析一行,不能进行增删。

XML解析器

1、而在这两种解析方式的基础上,基于底层api的更高级封装解析器也应用而
生,比如面向Java的jaxp/jdom/dom4j。
2、其中dom4j是通过dom4j的jar包可以解析XML文件内容。

面试:

面试回答:xml解析方式有很多种,常用的有两种。
针对两种解析方式的API:一些组织或者公司,针对以上两种解析方式,给出的解析方案有哪些?
jaxp(sun公司)
jdom
dom4j(使用比较广泛)---(当牧放债)

XML约束

把XML比作文章,那么dom4j类似于翻译文章,而约束类似于写文章的格式。

DTD约束

//DTD约束文档
<!ELEMENT  stus (stu)>
<!ELEMENT  stu  (name,age)>
<!ELEMENT  name  (#PCDATA)>
<!ELEMENT  age  (#PCDATA)>
<!ELEMENT  stu  id  ID #IMPLIED>

<!--XML实例文档-->
<stus>
    <stu id="10086">
        <age>18</age>
        <name>zhangsan</name>
    </stu>
    <stu id="10086">
        <name>lisi</name>
        <age>28</age>
    </stu>
</stus>

Schema约束

              <!--Schema约束文档-->
<!--
xmlns : 命名空间
targetNamespace:目标名称空间
elementFormDefault:元素的格式化情况
-->
<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" 
targetNamespace="http://www.example.org/NewXMLSchema" 
xmlns:tns="http://www.example.org/NewXMLSchema" 
elementFormDefault="qualified">

<element name="teachers">
    <complexType>
        <sequence>
            <!-- 复杂元素 -->
            <element name="teacher">
                <complexType>
                    <sequence>
                <!-- 简单元素 -->
                <element name="name" type="string"></element>
                <element name="age" type="int"></element>
                    </sequence>
                </complexType>
            </element>
        </sequence>
    </complexType>
 </element>
</schema>

                <!--schema实例文档-->
<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.example.org/NewXMLSchema" xmlns:tns="http://www.example.org/NewXMLSchema" elementFormDefault="qualified">
</schema>
<teachers
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns="http://www.itheima.com/teacher"
    xsi:schemaLocation="http://www.itheima.com/teacher teacher.xsd"
>
    <teacher>
        <name>zhangsan</name>
        <age>19</age>
    </teacher>
    <teacher>
        <name>lisi</name>
        <age>19</age>
    </teacher>
    <teacher>
        <name>wangwu</name>
        <age>19</age>
    </teacher>
</teachers>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容