资讯专栏INFORMATION COLUMN

XML+JSON面试题都在这里

moven_j / 3577人阅读

摘要:是什么是什么也是常用的技术,用于将一个文件转换为另一种,或者其他的格式。也可以很方便地把一种文件转换为另一种文档如果文章有错的地方欢迎指正,大家互相交流。

XML+JSON常见面试题 什么是JSON和XML
什么是JSON和XML

JSON:JavaScript Object Notation 【JavaScript 对象表示法】.

XML:extensiable markup language 被称作可扩展标记语言

JSON和XML都是数据交换语言,完全独立于任何程序语言的文本格式。

JSON与XML区别是什么? 有什么共同点
JSON与XML区别是什么? 有什么共同点

共同点:

用于RPC远程调用数据交换格式

RPC远程调用简单理解:调用本地服务一样调用远程服务

具体可参考@用心阁的答案:https://www.zhihu.com/question/25536695和@郑大侠的答案:https://www.zhihu.com/question/25536695/answer/134976748

RPC服务与HTTP服务对比:http://blog.csdn.net/wangyunpeng0319/article/details/78651998

区别:

XML文件格式复杂,比较占宽带,服务器端与客户端解析xml话费较多的资源和时间.

JSON文件格式压缩,占宽带小

JSON、XML解析有那些方式?
JSON、XML解析有那些方式?

JSON解析方式(阿里巴巴fastjson、谷歌gson,jackJson)

XML解析方式(dom、sax、pul)

XML和JSON优缺点

XML的优点

A.格式统一,符合标准;

B.容易与其他系统进行远程交互,数据共享比较方便

XML的缺点

A.XML文件庞大,文件格式复杂,传输占带宽;

B.服务器端和客户端都需要花费大量代码来解析XML,导致服务器端和客户端代码变得异常复杂且不易维护;

C.客户端不同浏览器之间解析XML的方式不一致,需要重复编写很多代码;

D.服务器端和客户端解析XML花费较多的资源和时间。

JSON的优点

A.数据格式比较简单,易于读写,格式都是压缩的,占用带宽小;

B.易于解析,客户端JavaScript可以简单的通过eval_r()进行JSON数据的读取;

C.支持多种语言,包括ActionScript, C, C#, ColdFusion, Java, JavaScript, Perl, PHP, Python, Ruby等服务器端语言,便于服务器端的解析;

D.因为JSON格式能直接为服务器端代码使用,大大简化了服务器端和客户端的代码开发量,且完成任务不变,并且易于维护

JSON的缺点

A.没有XML格式这么推广的深入人心和喜用广泛,没有XML那么通用性;

B.JSON片段的创建和验证过程比一般的XML稍显复杂。

参考:http://www.cnblogs.com/SanMaoSpace/p/3139186.html

XPath 是什么
XPath  是什么

XPath 是用于从 XML 文档检索元素的 XML 技术。XML 文档是结构化的,因此 XPath 可以从 XML 文件定位和检索元素、属性或值。从数据检索方面来说,XPath与 SQL 很相似,但是它有自己的语法和规则。了解更多查看怎样使用 XPath 从 XML 文档中检索数据

XML 命名空间是什么?它为什么很重要
XML  命名空间是什么?它为什么很重要

XML 命名空间与 Java 的 package 类似,用来避免不同来源名称相同的标签发生冲突。XML 命名空间在 XML 文档顶部使用 xmlns 属性定义,语法为 xmlns:prefix=’URI’。prefix 与XML 文档中实际标签一起使用。

下面例子为 XML 命名空间的使用。


837363223

DOM 和 和 SAX 解析器有什么区别
DOM 和 和 SAX  解析器有什么区别

DOM解析读取整个XML文档,在内存中形成DOM树,很方便地对XML文档的内容进行增删改。但如果XML文档的内容过大,那么就会导致内存溢出!

SAX解析采用部分读取的方式,可以处理大型文件,但只能对文件按顺序从头到尾解析一遍,不支持文件的增删改操作

DOM是基于内存的,不管文件有多大,都会将所有的内容预先装载到内存中。从而消耗很大的内存空间。而SAX是基于事件的。当某个事件被触发时,才获取相应的XML的部分数据,从而不管XML文件有多大,都只占用了少量的内存空间。

DOM可以读取XML也可以向XML文件中插入数据,而SAX却只能对XML进行读取,而不能在文件中插入数据。这也是SAX的一个缺点。

SAX的另一个缺点:DOM我们可以指定要访问的元素进行随机访问,而SAX则不行。SAX是从文档开始执行遍历的。并且只能遍历一次。也就是说我们不能随机的访问XML文件,只能从头到尾的将XML文件遍历一次(当然也可以中间截断遍历)。

XSLT 是什么?
XSLT  是什么?

XSLT 也是常用的 XML 技术, 用于将一个 XML 文件转换为另一种 XML,HTML 或者其他的格式。XSLT 为转换 XML 文件详细定义了自己的语法,函数和操作符。通常由 XSLT 引擎完成转换,XSLT 引擎读取 XSLT 语法编写的 XML 样式表或者 XSL 文件的指令。XSLT 大量使用递归来执行转换。一个常见 XSLT 使用就是将 XML 文件中的数据作为 HTML 页面显示。XSLT 也可以很方便地把一种 XML 文件转换为另一种 XML 文档.

如果文章有错的地方欢迎指正,大家互相交流。习惯在微信看技术文章的同学,可以关注微信公众号:Java3y

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/70998.html

相关文章

  • XML+JSON面试都在这里

    摘要:是什么是什么也是常用的技术,用于将一个文件转换为另一种,或者其他的格式。也可以很方便地把一种文件转换为另一种文档如果文章有错的地方欢迎指正,大家互相交流。 XML+JSON常见面试题 什么是JSON和XML 什么是JSON和XML JSON:JavaScript Object Notation 【JavaScript 对象表示法】. XML:extensiable markup lan...

    isaced 评论0 收藏0
  • Java面试前需要了解的东西

    摘要:我在面试前针对基础也花了不少的时间,期间也将自己写过的博文粗略地刷了一遍,同时也在网上找了不少比较好的资料部分是没看完的。看面试题也是校验自己是否真正理解了这个知识点,也很有可能会有新的收获。 一、前言 只有光头才能变强 回顾前面: 广州三本找Java实习经历 上一篇写了自己面试的经历和一些在面试的时候遇到的题目(笔试题和面试题)。 我在面试前针对Java基础也花了不少的时间,期间也将...

    renweihub 评论0 收藏0
  • Java3y文章目录导航

    摘要:前言由于写的文章已经是有点多了,为了自己和大家的检索方便,于是我就做了这么一个博客导航。 前言 由于写的文章已经是有点多了,为了自己和大家的检索方便,于是我就做了这么一个博客导航。 由于更新比较频繁,因此隔一段时间才会更新目录导航哦~想要获取最新原创的技术文章欢迎关注我的公众号:Java3y Java3y文章目录导航 Java基础 泛型就这么简单 注解就这么简单 Druid数据库连接池...

    KevinYan 评论0 收藏0
  • Tomcat+Servlet面试都在这里

    摘要:当被实例化后,会调用方法初始化这个对象处理服务。方式可以在请求的实体内容中向服务器发送数据,传送的数据量无限制。不存在敏感信息泄露问题。并且依赖于名为的,该默认的属性为。 下面是我整理下来的Servlet知识点: showImg(https://segmentfault.com/img/bV3c9e); 图上的知识点都可以在我其他的文章内找到相应内容。 Tomcat常见面试题 Tom...

    Tychio 评论0 收藏0

发表评论

0条评论

moven_j

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<