一、介绍
- XML指可扩展标记语言(eXtensible Markup Language),类似于HTML,都是一种标记语言
- XML被设计用来传输和存储数据,不用于表现和展示数据,HTML 则用来表现数据。
现今JSON(JavaScript Object Notation)格式的数据传输使用,更加流行,因为其与JS交互方便、传输体积小速度快、可读性好。 - 在Java中一般做配置文件使用,例如Spring、Mybatis的 配置文件。
二、XML文件
1、XML文件格式
声明格式:<?xml 属性列表 ?>
属性列表:
- version:版本号必须,值为1.0或1.1
- encoding:编码格式,默认iso-8859-1,一般都声明为UTF-8
2、XML约束
规定xml文档的书写规则,规定了标签名和属性。在java开发中,能看懂即可。
- DTD(Document Type Definition)约束,一种简单的约束技术,使用.dtd文件约束
引入方式一:内部dtd,将约束规则定义在xml文档中,<!DOCTYPE 根标签名[dtd约束文件内容]>
引入方式二:本地dtd,<!DOCTYPE 根标签名 SYSTEM “dtd文件位置”>
引入方式三:网络dtd,<!DOCTYPE 根标签名 PUBLIC “dtd文件名” “dtd文件的URL”>
- Schema约束,复杂约束,使用.xsd文件(XML Schema Definition)约束
xmlns:表示xml namespace,命名空间可以起个别名xmlns:context,指定使用某个命名空间下标签
三、XML解析
- DOM:Document Object Model,使用JDK的解析方式,DocumentBuilderFactory.newInstance()等
- SAX:Simple API for XML
- JDOM:JDOM is, quite simply, a Java representation of an XML document.
- DOM4J: flexible XML framework for Java