java的xml面试题_Java程序员的10个XML面试问答

java的xml面试题

XML面试问题在各种编程工作面试中非常受欢迎,包括针对Web开发人员的Java面试 。 XML是一项成熟的技术,通常用作从一个平台传输数据的标准。 XML面试问题包含来自各种XML技术(例如XSLT)的问题,该技术用于转换XML文件, XPATH ,XQuery和XML基础(例如DTD或Schema)。

在本文中,我们将看到上述主题中的10个XML采访常见问题 。 这些问题通常是在各种Java访谈中提出的,但在其他编程访谈(如C,C ++,Scala或任何其他编程语言)中同样有用。 由于XML不与任何编程语言绑定

就像SQL是程序员期望的技能之一一样,在出现任何技术工作面试之前练习一些XML问题也是很有意义的。

XML面试问答

这是我关于XML技术的一些常见问与答面试问题的清单。 清单上的问题不是很棘手,但涉及XML技术的一些重要领域,例如DTD,XML Schema,XSLT转换, XPATH评估 ,XML绑定,XML解析器和XML基础知识,例如名称空间,验证,属性,元素等。

问题1:什么是XML?

答:XML代表可扩展标记语言,这意味着您可以根据需要扩展XML。 您可以轻松地以XML定义自定义标签(如<books>,<orders>等),而与HTML等其他标记语言相反,在HTML中,您需要使用预定义标签(例如<p>),并且不能使用用户定义的标签。 尽管可以通过使用DTD和XML Schema来标准化XML的结构。 XML通常用于将数据从一个系统传输到另一个系统,例如在企业应用程序的客户端和服务器之间。

问题2:DTD和XML模式之间的区别?

答:DTD和XML Schema之间有一些区别,例如DTD不是使用XML编写的,而XML Schema本身就是xml文档,这意味着可以使用现有的XML工具(如XML解析器)来处理XML Schema。 XML模式也是在DTD之后设计的,它提供了更多类型来映射XML文档中的不同类型的数据。 另一方面,DTD代表文档类型定义,并且是定义XML文档结构的传统方法。

问题3:什么是XPath?

答:XPath是一种XML技术,用于从XML文档中检索元素。 由于XML文档是结构化的,因此可以使用XPath表达式来查找和检索XML文件中的元素,属性或值。 从XML检索数据方面,XPath与SQL相似,但它具有自己的语法和规则。 请参阅此处以了解有关如何使用XPath从XML文档中检索数据的更多信息。

问题4:什么是XSLT?

答:XSLT是另一种流行的XML技术,可以将一个XML文件转换为其他XML,HTML或任何其他格式。 XSLT就像一种语言,它指定了自己的语法,函数和运算符来转换XML文档。 通常,转换由XSLT引擎完成,该引擎读取XML样式表或XSL文件中使用XSLT语法编写的指令。 XSLT还广泛使用了递归来执行转换。 使用XSLT的流行示例之一是将XML文件中存在的数据显示为HTML页面。 XSLT在将一个XML文件转换为另一个XML文档方面也非常方便。

问题5:XML中的元素和属性是什么?

答案:这可以用一个例子最好地解释。 让我们看一个简单的XML代码段

<Orders>
  <Order id="123">
     <Symbol> 6758.T</Symbol>
     <Price> 2300</Price>
  <Order>
<Orders>

在此示例XML id是 元件。 这里 , 和 也是其他元素,但它们没有任何属性。

问题6:格式正确的XML是什么意思?

答:另一个有趣的XML采访问题 ,最常出现在电话采访中。 格式正确的 XML表示语法上正确的XML文档,例如它具有根元素,所有打开的标签均已正确关闭,属性用引号引起来。如果XML格式不正确,则可能无法通过各种方式正确处理和解析。 XML解析器。

为什么如此重要?

答:XML名称空间类似于Java中的程序包 ,用于提供一种避免名称相同但来源不同的xml标记之间发生冲突的方法。 XML名称空间是使用XML文档顶部的xmlns属性定义的,并且具有以下语法xmlns:prefix ='URI'。 之后,该前缀与XML文档中的实际标记一起使用。 这是使用XML名称空间的示例:

<root xmlns:inst="http://instruments.com/inst"
  <inst:phone>
      <inst:number>837363223</inst:number>
   </inst:phone>
</root>

问题8:DOM和SAX解析器之间的区别?

答:这是另一个非常流行的XML采访问题,不仅在XML世界中,而且在Java世界中。 DOM和SAX解析器之间的主要区别在于它们解析XML文档的方式。 DOM在解析期间创建XML文档的内存树表示形式,而SAX是事件驱动的解析器。 有关此问题的详细解答,请参见DOM与SAX解析器之间的区别

问题9:什么是XML中的CDATA部分?

答:我喜欢XML Interview的问题是因为它的简单性和重要性,但是许多程序员对此并不了解。 CDATA代表字符数据,并具有XML解析器的特殊说明。 由于XML解析器解析XML文档中的所有文本,例如<name>,这是人的名字</ name>,即使标记<name>的值将被解析,因为它可能包含XML标记,例如<name> <firstname> Firstname < / firstname> </ name>。 XML解析器不解析CDATA节。 CDATA部分以“ <![CDATA [””开头,并以“]]>结尾。

问题10:Java中的XML数据绑定是什么?

答:Java中的XML绑定是指从XML文档创建Java类和对象,然后使用Java编程语言来修改XML文档 。 JAXB,用于XML绑定的Java API提供了将XML文档与Java对象绑定的便捷方法。 XML绑定的其他替代方法是使用开源库,例如XML Beans。 Java中XML绑定的最大优势之一是利用Java编程功能来创建和修改XML文档。

XML Interview问答列表是从程序员那里收集的,但对从事XML技术工作的人很有用。 XPath,XSLT,XQuery等XML技术的重要性仅会由于XML的平台无关性以及跨平台传输数据的流行而增加。 尽管XML具有冗长和大小之类的缺点,但是它在Web服务以及将数据从另一个系统传输到另一个系统中时非常有用,而带宽和速度是次要的问题。

Javarevisited 上的其他面试问题文章排名前30位的UNIX和Linux命令面试问题–已回答

参考:来自JavaJCG合作伙伴 Javin Paul在Javarevisited博客上针对Java程序员的10个XML Interview问答

翻译自: https://www.javacodegeeks.com/2013/01/10-xml-interview-questions-and-answers-for-java-programmer.html

java的xml面试题

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值