1.XML:可扩展标记语言(extensible Markup Language)

  • 是一种数据表示格式
  • 可以描述非常复杂的数据结构
  • 用于存储和传输数据

1.1XML特点:

  • 1.纯文本,默认utf-8编码
  • 2.可嵌套,是和表示结构化数据

1.2XML应用:

文件形式,如book.xml

网络传输,xml格式的内容

<?xml version="1.0" encoding="UTF-8"?><!--XML声明,version只能写1.0,encoding默认utf-8-->
<!DOCTYPE note SYSTEM "book.dtd"><!--文档类型定义(DTD指令,可选)-->
<book id="1"><!--有且仅有一个根元素-->
<name>Java技术核心技术</name><!--可以有若干个子元素-->
<author>CayS Hormann</author>
<isbn lang="CN">123456789</isbn><!--元素可以包含属性-->
<tags>
<tag>Java</tag>
<tag>Network</tag>
</tags><!--元素必须正确嵌套-->
<pubDate /><!--空元素用<tag />-->
</book>

XML中的特殊字符

— < < —> & —& " —" , —'

2.验证XML

2.1格式正确的XML:

  • XML的格式是正确的
  • 可以被解析器正常读取

2.2合法的XML

数据结构可以被DTD或者XSD验证

必须符合若干规则,参见注释

2.3如何验证XML文件的正确性,使用浏览器查看或网站验证即可

2.4XML相关技术 很少用到,了解即可

  • DTD和XSD:验证XML结构和数据是否有效
  • Namespace:XML节点和属性的名字空间
  • XSLT:把XML转化为另一种文本的描述语言
  • XPath:一种XML节点查询语言

3.解析XML

两种标准的解析XML的API:

  • DOM:一次性读取XML,在内存中表示为树形结构
  • SAX:以流的形式读取XML,使用事件回调

4.总结:

  • XML是可扩展标记语言的缩写
  • 纯文本数据
  • 用于表示复杂的结构化数据
  • 用于数据的存储和传输
  • 缺点:数据庞大,格式复杂

廖雪峰Java14Java操作XML和JSON-1XML-1XML介绍的更多相关文章

  1. 廖雪峰Java14Java操作XML和JSON-2JSON-2处理JSON

    解析JSON JSR 353 API 常用的第三方库 * Jackson * gson * fastjson Jackson: 提供了读写JSON的API JSON和JavaBean可以互相转换 可食 ...

  2. 廖雪峰Java14Java操作XML和JSON-2JSON-1Json介绍

    JSON是一种类似JavaScript对象的数据表示格式 JavaScript Object Notation 去除了JavaScript的执行语句 仅保留数据 JSON格式: 仅保留UTF-8编码 ...

  3. 廖雪峰Java14Java操作XML和JSON-1XML-4第三方XML库

    总结: 使用Jackson可以快速在XML和JavaBean之间互相转换 可使用Annotation定制序列化和反序列化

  4. 廖雪峰Java14Java操作XML和JSON-1XML-3SAX

    SAX:Simple API for XML 基于事件的API import javax.xml.parsers.SAXParser; import javax.xml.parsers.SAXPars ...

  5. 廖雪峰Java14Java操作XML和JSON-1XML-2DOM

    XML是一种数据表示形式. 可以描述非常复杂的数据数据结构 用于传输和传输数据 DOM:Document Object Model DOM模型就是把XML文档作为一个树形结构,从根结点开始,每个节点都 ...

  6. 廖雪峰js教程笔记9 json

    JSON是JavaScript Object Notation的缩写,它是一种数据交换格式. 在JSON出现之前,大家一直用XML来传递数据.因为XML是一种纯文本格式,所以它适合在网络上交换数据.X ...

  7. iOS:网络编程中三个数据解析协议HTTP、XML、JSON的详细介绍

    网络编程:HTTP协议.XML数据协议.JSON数据协议: HTTP: 1.HTTP传输数据有四种方式:Get方式.Post方式.同步请求方式.异步请求方式. 说明:同步和异步请求方式在创建链接对象和 ...

  8. JavaScript操作XML

    JavaScript操作XML (一) JavaScript操作XML是通过XML DOM来完成的.那么什么是XML DOM呢?XML DOM 是: 用于 XML 的标准对象模型 用于 XML 的标准 ...

  9. java使用dom4j和XPath解析XML与.net 操作XML小结

    最近研究java的dom4j包,使用 dom4j包来操作了xml 文件 包括三个文件:studentInfo.xml(待解析的xml文件), Dom4jReadExmple.java(解析的主要类), ...

随机推荐

  1. C#-Api:身份证识别

    ylbtech-C#-Api:身份证识别 通过POST上传base64格式的图片内容,可识别二代身份证.驾照.行驶证.军官证.中华人民共和国往来港澳通行证.台湾居民往来大陆通行证.大陆居民往来台湾通行 ...

  2. jdk自带的数据库derby的基本使用以及注意事项(mac为例),附java demo

    文章目录 安装 环境变量 验证是否安装成功 启动 本地启动 允许远程连接的启动方式: 在启动过程中可能遇到的错误(远程连接的时候会出现): 1 2 连接测试,创建数据库 方法一(推荐) 方法二 jav ...

  3. PAT_A1079#Total Sales of Supply Chain

    Source: PAT A1079 Total Sales of Supply Chain (25 分) Description: A supply chain is a network of ret ...

  4. Python3实战spark大数据分析及调度✍✍✍

    Python3实战spark大数据分析及调度  整个课程都看完了,这个课程的分享可以往下看,下面有链接,之前做java开发也做了一些年头,也分享下自己看这个视频的感受,单论单个知识点课程本身没问题,大 ...

  5. 网页布局WEB标准的HTML结构化

    您正在学习WEB标准CSS网页布局吗?是不是还不能完全掌握纯CSS布局?通常有两种需要您特别注意: 第一种可能是你还没有理解CSS处理页面的原理.在你考虑你的页面整体表现效果前,你应当先考虑内容的语义 ...

  6. D3.js的基础部分之数组的处理 集合(Set)(v3版本)

    数组的处理 之 集合(set) 集合(Set)是数学中常用的概念,表示具有某种特定性质的事物的总体.集合里的项叫做元素.集合的相关方法有:   d3.set([array]) //使用数组来构建集合, ...

  7. gulp 压缩 uglify报错GulpUglifyError: unable to minify JavaScript

    引:https://www.cnblogs.com/vellemo/p/6898125.html 在压缩的时候报错:GulpUglifyError: unable to minify JavaScri ...

  8. final修饰和StringBuffer的几个案例(拼接,反转,对称操作)

    final关键字修饰时如果是基本数据类型的变量,则其数值一旦在初始化之后便不能更改:如果是引用类型的变量,则在对其初始化之后便不能再让其指向另一个对象,但引用变量不能变,引用变量所指向的对象中的内容还 ...

  9. Python代码中func(*args, **kwargs)

    这是Python函数可变参数 args及kwargs *args表示任何多个无名参数,它是一个tuple **kwargs表示关键字参数,它是一个dict 测试代码如下: def foo(*args, ...

  10. JVM中堆栈

    1.JVM是基于堆栈的虚拟机.JVM为每个新创建的线程都分配一个堆栈.也就是说,对于一个Java程序来说,它的运行就是通过对堆栈的操作来完成的.堆栈以帧为单位保存线程的状态.JVM对堆栈只进行两种操作 ...