XML:可扩展标记语言

  01.很像html

  02.着重点是数据的保存

  03.无需预编译

  04.符合W3C标准

可扩展:我们可以自定义

标记: 计算机所能认识的信息符号!

XML的组成部分:

01.文档声明  <?xml version="1.0" encoding="UTF-8"?>

02.元素    <p></p>

03.属性    <p  id="haha"></p>

04.注释   <!-- -->

05.特殊字符

06.CDATA区域  Character data   字符數據

07.处理指令   引入css样式

注意点:

01.xml文件中只能有一个根节点

02.节点要成对出现  有开发和闭合

03.节点必须正确的嵌套

04.严格区分大小写

05.空格和换行都是特殊字符 会被解析器解析

xml,html都是一个类似于倒挂的树!

只有一个根节点,枝叶茂盛!

我们把这个倒挂的树称之为===》dom树!

DOM:(Doucument Object Model)文档对象模型!

特殊字符:

>   &gt;

<   &lt;

&   &amp;

'   &apos;

"   &quot;

CDATA区域: XML解析器不会处理,而是当成字符串原样输出!

<![CDATA[xml内容]]>

解析xml文件的方式:

01.DOM:基于xml文档树结构的解析,把xml文件中的内容都读取到内存中,

         比较占内存,消耗资源多!

02.SAX:基于事件的解析。消耗资源小!

03.JDOM:针对于java的特定模型!满足2 8原则!自身没有解析器,依赖于SAX2!

04.DOM4J:for(4)JDOM的一个分支!源码开放,性能优异,功能强大!

创建第一个maven项目:

  1. new  project===>maven==>quick==>archetypeCatalog=internal

archetypeCatalog=internal(解决慢的问题)

2.引入需要的pom节点

3.自定义一个xml文件  (学校  年级  班级)

4.需求通过dom4j实现查询学校下面的年级以及班级信息

5.创建一个测试类 书写代码

DTD:Document Type Definition(文档类型定义)

01.规范我们的编码

02.在浏览器中正常的显示

<!ELEMENT school (grade+),(class|student)>

ELEMENT :元素,关键字

school:元素名称

grade:子元素或者元素类型  CDATA  PCDATA (Parse)解析数据,不能包含子元素

():用来给元素分组

| :两者必须选择一个

+ : 1-N,至少出现一次

* : 0-N,可有可无,并且可以多次

?: 0|1,最多一次

,:元素出现的顺序

DTD文档使用方式:

01.内部DTD

<!DOCTYPE 根元素[定义的内容]>

02.外部DTD

<!DOCTYPE 根元素 SYSTEM "dtd文件位置">

02.内外部DTD

<!DOCTYPE 根元素 SYSTEM "dtd文件位置"[定义的内容]>

 

DTD的作用

DTD(Document Type Definition文档类型定义)是一组机器可读的规则,它们定义XML或HTML的特定版本中允许有什么,不允许有什么。在解析网页时,浏览器将使用这些规则检查页面的有效性并且采取相应的措施。(由DTD中定义的文档类型影响)

DTD的属性

  1. 1.   声明属性

<!ATTLIST 元素名称 属性名称 属性类型 默认值>

实例:

<!ATTLIST payment type CDATA "check">

具体参考网站:

http://www.w3school.com.cn/dtd/dtd_attributes.asp

猜你喜欢

转载自www.cnblogs.com/fkx1/p/9255786.html