JSON与XML的入门理解

码农天地 -
JSON与XML的入门理解

在初次接触微信开发当中遇到了两个生词,分别是XML还有JSON,于是找了相关资料总结了一下

本文定位:帮助初学者了解这两个名词,以及大体的概念,达到现学现卖的目的

概述

设想一个场景,两个系统,用不同的语言编写的程序,并且是定位不同的程序,我们现在需要在这两个系统当中传递消息,在这个传递过程中我们该用什么呢?

XML和JSON就是为了这样的场景而生的,他们的好处就在于可以在不同的系统当中传递消息,以一种不同的程序都可以读懂的方式来传递消息。放到五层模型之中,我们可以清楚的理解出他们位于应用层XMLXML 指可扩展标记语言XML 被设计用来传输和存储数据(XML存在的根本价值)。XML是一种语言,类似于html,但是并没有像html那样的各式各样的预定义标签来让我们使用,而是一些需要我们自行定义的标签下面是一段XML代码的实例
<note>  
<date>2020-09-12</date>  
<to>小明</to>  
<from>李华</from>  
<heading>Reminder</heading>  
<body>Don't forget the English!</body>  
</note>

我相信,如果读者有html的基础,理解起来会特别的容易。我们可以通过读标签当中的文档来获取我们需要的信息,这样我们的程序只要找到相应的标签就能找到相应的信息,具有高效性

而且由于我们需要寻找的就是标签,存储也是相当的灵活,我们可以在当中随意定制标签的名字来进行插入或者删除,不得不佩服这样灵巧的设计

XML的应用

1.XML的出现解决了程序间数据传输的问题:

2.XML可以做配置文件

3.XML可以充当小型的数据库(我们程序中可能用到一些经常要人工配置的数据,如果放在数据库中读取不合适,因为这会增加维护数据库的工作,则可以考虑直接用XML来做小型数据库。这种方式直接读取文件显然要比读数据库快。比如msn中保存用户聊天记录就是用XML文件)

XML的语法

简介:与html类似,学习起来可以通过观察与html的不同之处来记忆语法,本篇文章的目的是达到现学现用的作用,不同的语言框架有不同的解析XML语包的程序,所以当编写程序的时候在网上查找官方文档即可,需要学习语法的话建议移步菜鸟教程。

如何使用XML

获取到数据代码之后,用每种语言的解析函数直接解析使用。

JSON定义:JavaScript Object Notation.

从名字我们就可以观察出来,这个东西跟JavaScript有关

JSON是一种用于存储和交换数据的语法

JSON是文本,使用JavaScript编写

它用JS的语法编写是不是就意味着他与JS在文本的编辑与解析上有着不可分割的联系呢?当然不是,JSON的作用是要在不同的程序之间进行数据交互,所以,设计它的时候就已经决定了它需要被不同的语言解析。

举例

{  
"employees": [  
{ "firstName":"Bill" , "lastName":"Gates" },  
{ "firstName":"George" , "lastName":"Bush" },  
{ "firstName":"Thomas" , "lastName":"Carter" }  
]  
}
怎么用?

两个途径

1.我们把数据包发到服务器,这时候只需要发送一个JSON格式的数据包即可

2.从 web 服务器上读取 JSON 数据(作为文件或作为 HttpRequest),将 JSON 数据转换为 JavaScript 对象,然后在网页中使用该数据。

二者的差别

二者目前在数据传输的地位大体相近,但是JSON比XML更加的轻型(虽然两个东西都已经很轻型了),从解析难度上来说JSON也是优于XML,所以个人觉得JSON更加的优越。

总结

就是这样的两个东西,简单易懂而且实用,相信以后还会更多的遇到他们并了解他们的性质

版权声明

本文保留所有权利,版权归河北工业大学梦云智软件开发团队所有。未经团队及作者事先书面同意,您不得以任何方式将本文内容进行商业性使用或通过信息网络传播本文内容。本文作者:温宇航

特别申明:本文内容来源网络,版权归原作者所有,如有侵权请立即与我们联系(cy198701067573@163.com),我们将及时处理。

php介绍

PHP即“超文本预处理器”,是一种通用开源脚本语言。PHP是在服务器端执行的脚本语言,与C语言类似,是常用的网站编程语言。PHP独特的语法混合了C、Java、Perl以及 PHP 自创的语法。利于学习,使用广泛,主要适用于Web开发领域。

Tags 标签

php

扩展阅读

加个好友,技术交流

1628738909466805.jpg