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

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

1.1XML特点:

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

1.2XML应用:

文件形式,如book.xml

网络传输,xml格式的内容

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

    Unity NGUI系统中是没有对粒子进行排序的,如: 怎么解决这个问题呢? 思路是把粒子的渲染层级,相对于UI组件的层级进行一个偏移. 解决后的效果如下: 代码如下: using System.Co ...

  2. 剑指offer——20删除链表中重复的结点

    题目描述 在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针. 例如,链表1->2->3->3->4->4->5 处理后 ...

  3. Git仓库操作命令

    创建仓库 git init 在当前目录执行,会生成.git目录文件,这个和SVN一致. 提交到仓库 git commit -m "first commit" -m:表示提交描述,必 ...

  4. 29-Ubuntu-远程管理命令-03-SSH工作方式简介

    在Linux中SSH是非常重要的工具,通过SSH客户端可以连接到运行了SSH服务器的远程机器上. 1.SSH客户端是一种使用Secure Shell(SSH)协议连接到远程计算机的软件程序. 2.SS ...

  5. 2-JDK环境变量配置和验证

    背景: 官网下载,默认路径安装,如下图,java目录下有两个文件夹:jdk和jre: 1.计算机 -> 右击 -> 属性 -> 选择左侧的'高级系统设置' 2.高级系统设置 -> ...

  6. 2018湘潭大学程序设计竞赛【D】

    题目链接:https://www.nowcoder.com/acm/contest/105/D 题意:就是数的fib表示方法.按权展开,又按二进制算出结果输出. 题解:贪心和数论吧.找到跟数最接近的f ...

  7. 使用Photoshop+960 Grid System模板进行网页设计

    前几天彬Go和大家一起讨论了960 Grid System这个CSS网格系统框架的基本原理和使用方法.今天,暴风彬彬将教大家使用Photoshop结合960 Grid System模板来设计一个真正符 ...

  8. HTML_案例(首页制作)

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. 如何使用Hive集成Solr?

    (一)Hive+Solr简介 Hive作为Hadoop生态系统里面离线的数据仓库,可以非常方便的使用SQL的方式来离线分析海量的历史数据,并根据分析的结果,来干一些其他的事情,如报表统计查询等. So ...

  10. 编译 GNU binutils

    重新以 arm 用户登陆,让新设置的环境变量起作用. [arm@localhost arm]#su arm [arm@localhost arm]#cd ${SRC} [arm@localhost t ...