廖雪峰Java14Java操作XML和JSON-1XML-1XML介绍
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介绍的更多相关文章
- 廖雪峰Java14Java操作XML和JSON-2JSON-2处理JSON
解析JSON JSR 353 API 常用的第三方库 * Jackson * gson * fastjson Jackson: 提供了读写JSON的API JSON和JavaBean可以互相转换 可食 ...
- 廖雪峰Java14Java操作XML和JSON-2JSON-1Json介绍
JSON是一种类似JavaScript对象的数据表示格式 JavaScript Object Notation 去除了JavaScript的执行语句 仅保留数据 JSON格式: 仅保留UTF-8编码 ...
- 廖雪峰Java14Java操作XML和JSON-1XML-4第三方XML库
总结: 使用Jackson可以快速在XML和JavaBean之间互相转换 可使用Annotation定制序列化和反序列化
- 廖雪峰Java14Java操作XML和JSON-1XML-3SAX
SAX:Simple API for XML 基于事件的API import javax.xml.parsers.SAXParser; import javax.xml.parsers.SAXPars ...
- 廖雪峰Java14Java操作XML和JSON-1XML-2DOM
XML是一种数据表示形式. 可以描述非常复杂的数据数据结构 用于传输和传输数据 DOM:Document Object Model DOM模型就是把XML文档作为一个树形结构,从根结点开始,每个节点都 ...
- 廖雪峰js教程笔记9 json
JSON是JavaScript Object Notation的缩写,它是一种数据交换格式. 在JSON出现之前,大家一直用XML来传递数据.因为XML是一种纯文本格式,所以它适合在网络上交换数据.X ...
- iOS:网络编程中三个数据解析协议HTTP、XML、JSON的详细介绍
网络编程:HTTP协议.XML数据协议.JSON数据协议: HTTP: 1.HTTP传输数据有四种方式:Get方式.Post方式.同步请求方式.异步请求方式. 说明:同步和异步请求方式在创建链接对象和 ...
- JavaScript操作XML
JavaScript操作XML (一) JavaScript操作XML是通过XML DOM来完成的.那么什么是XML DOM呢?XML DOM 是: 用于 XML 的标准对象模型 用于 XML 的标准 ...
- java使用dom4j和XPath解析XML与.net 操作XML小结
最近研究java的dom4j包,使用 dom4j包来操作了xml 文件 包括三个文件:studentInfo.xml(待解析的xml文件), Dom4jReadExmple.java(解析的主要类), ...
随机推荐
- 使用bash关联数组统计单词
使用bash关联数组统计单词 从bash 4开始支持关联数组,使用前需要声明,即 declare -A map map[key1]=value1 map[key2]=value2 map=([key1 ...
- iOS开发UIResponder简介API
#import <Foundation/Foundation.h> #import <UIKit/UIKitDefines.h> #import <UIKit/UIEve ...
- 基于Netty的RPC架构学习笔记(九):自定义序列化协议
文章目录 为什么需要自定义序列化协议
- GIT学习记录3(分支管理)
学习参考地址:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000 本编随笔只是自己对 ...
- POJ2406-Power Strings-KMP循环节/哈希循环节
Given two strings a and b we define a*b to be their concatenation. For example, if a = "abc&quo ...
- CVE-2019-0708简单复现
各文件对应位置 rdp.rb -> /usr/share/metasploit-framework/lib/msf/core/exploit/rdp.rb rdp_scanner.rb -> ...
- Tomcat调优详解
前言 在这里告诫一下那些感觉自己啥都会的朋友们,其实你会的可能只是皮毛,不要感觉这个东西以前已经做过了,就不想去做了 其实你还远没有达到精通的地步,遇到以前做过的东西,也要用心的再去做一遍,你可能会从 ...
- [转]Visual Studio 各版本下载
原文地址:[置顶] Visual Studio 各版本下载 文件名称 文件大小 百度网盘下载 微软官方下载 Visual Studio 2015 Enterprise - 企业版 - 简体中文 3.8 ...
- shell 命令 文件(解)压缩 tar,zip, gzip,bzip2
1.gzip / gunzip [ gzip data.c] 对文件进行压缩,生成 data.c.gz 同时删除了原文件 同时压缩两个文件 [gunzip data.c.gz ...
- springboot2.0整合springsecurity前后端分离进行自定义权限控制
在阅读本文之前可以先看看springsecurity的基本执行流程,下面我展示一些核心配置文件,后面给出完整的整合代码到git上面,有兴趣的小伙伴可以下载进行研究 使用maven工程构建项目,首先需要 ...