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

xml

发布时间:2020-12-16 00:16:36 所属栏目:百科 来源:网络整理
导读:1.什么是xml? xml 是 (eXtensible Markup Language,可扩展标记语言); 2.xml有什么用? xml设计宗旨是表示数据,html是用来显示数据的,目前的版本有1.0,在实际开发中,xml常常以程序的配置文件存在。 注意: xml没有预定义的标签,html中的都是预定义标签,
1.什么是xml? xml 是 (eXtensible Markup Language,可扩展标记语言); 2.xml有什么用? xml设计宗旨是表示数据,html是用来显示数据的,目前的版本有1.0,在实际开发中,xml常常以程序的配置文件存在。 注意: xml没有预定义的标签,html中的都是预定义标签,xml可以自定义标签。 3.xml语法 文档声明 必须在文档的第一行 <?xml version="1.0" encoding="utf-8" ?> 元素 有且仅能有一个root结点,xml文档不会忽略空格和换行,严格区分大小写 元素的属性 属性取值一定要用双引号或单引号 引起来 注释 <!-- 和html注释一样 --> CDTAT区 (CD,Charactor Data)显示的都是文本 <![CDTAT[ 文本内容 ]]> 特殊字符 < &lt,> &gt 处理指令 用来指挥软件如何解析xml 4.两种xml约束 DTD (Document Type Definition,文档类型限定) 作用:约束xml文档的书写规范 注意:当保存DTD文件时必须按utf-8的格式保存。 如何导入文件来约束xml文档。 这儿要分两种情况: 在本地的dtd文件:<!DOCTYPE 根元素名称 SYSTEM "dtd文件的路径"> 在网络上的dtd文件:<!DOCTYPE 根元素名称 PUBLIC "dtd文件的名称" "dtd的url路径"> dtd的扩展名是什么? 就是.dtd dtd语法: Schema 其扩展名是 .xsd 什么是名称空间。 在编写完成XML Schema 文档完成后,需要要为文档中的元素绑定到一个RUI上,Schema技术用一个术语---名称空间。以后就可以 通过这个uri告诉解析器,这些元素来自哪里,被谁约束。 怎么根据Schema文档写xml文件。可分为四步 -------先找到根结点 ----------找到对应schema文档中声明的名称空间 -------------SchemaLocation 是说 名称空间与哪个文件对应 ---------------SchemaLocation 又来自哪里呢?来自远方 Schema语法 注意:Schema约束正在逐步替代DTD。 5.常用的三种解析xml方式 XML DOM 解析 解析原理: xml DOM 是 w3c的标准,xml dom 解析与html dom 解析 很类似,它们都会将对应某个文件的全部数据加载到内存中,在内存中映射出一根树的结构。 其中的根结点也document对象。 想要解析要对xml,具体怎么实现? ------------首先必须先得到document对象 首先通过DocuemntBuilderFactory类得到工厂实例 DocumentBuilderFactory fac = DocumentBuilderFactory.newInstance(); 再通过这个工厂实例创建DocumentBuilder对象 DocumentBuilder builder = fac.newDocumentBuilder(); 通过builder与想要解析xml文件相关联得到Document对象 Document document = builder.parse("xxxxxx"); 注意:xml 解析和 sax 解析 已经被集成到了java se中了。可以直接使用,不需要导入外部的包,而demo4j则需要导包。 SAX解析 sax解析不是w3c的标准,它是对xml 文件 一行一行进行解析的。 sax解析原理: sax解析是基于事件的驱动进行解析的。 sax解析xml的具体怎么实现? 首先肯定是得到工厂实例 SAXParserFactory factory =SAXParserFactory.newInstance(); SAXParser parser = factory.newSAXParser(); parser.setContentHandler();设置事件的处理方式,接受的是ContentHandler接口类型,也可以是extends DefaultHandler(适配器)。 parser.parse("要解析的xml文件"); demo4j解析: demo4j是一个开源组织的东西,所以需要先下载对应的api和文档。 demo4j集成了xml dom 和 sax的优点,目前很多东西都在用demo4j进行解析

(编辑:李大同)

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

    推荐文章
      热点阅读