admin 管理员组文章数量: 1087139
2024年4月19日发(作者:英文翻译在线转换)
一、选择题
1. XML采用以下哪种数据组织结构?( C )
A 星状结构 B 线状结构 C树状结构 D网状结构
2.
下列关于XML文档中根元素的说法不正确的是( D )
A每一个结构完整的XML文档中有且只有一个根元素
B 根元素完全包括了文档中其他所有元素
C 根元素的起始标记要放在其他所有元素的起始标记之前,而根元素的结束标记要放
在其他所有元素的结束标记之后
D 根元素不能包含属性节点
3. 下面哪个公司或组织制定了XML:( C )
A ISO B Oracle C W3C D Micrsoft
4. >、<、&等在XML文档中被赋予了特殊的意义,所以在XML文档中不能直接包
含这些字符,而是对这些字符采用了特殊编码,< 对应的特殊编码是:( B )
A & B < C &lgt; D &quto;
5. 以下说法不符合XML语法规则的是( C )
A)标记头和标记末的大小写一致
B)元素之间要正确的嵌套
C)结束标记可有可无
D)每个XML文档只能有一个根元素
6. 以下XML片段写法正确的是 ( D )
A
B
C
D
E
7. 用于修饰属性的缺省值不包含哪一项( C )
A #FIXED B #REQUIRED
C #PCDATA D #IMPLIED
8. 以下关于SAX的说法正确的是( B )
A)使用SAX可修改XML
B)SAX是事件驱动型XML解析器
C)SAX是对象模型XML解析器
D)以上答案都不对
9. DOM解析中,下面( A )方法可以获得XML文档节点树的根元素节点。
A.getDocumentElement() B. getEntities()
C. getPublicID() D. getWholeText()
10. 下列标记定义不合法的是( C )。
A.
C. <2title> D. <>
11. 解析下面XML文档时,下列说法正确的是( A )。
A. “耿祥义”是文本对象
B. “耿祥义”是元素对象
C.
D.
12. 关于DOM的描述错误的是( C )。
A. DOM使开发者能够以编程方式读取、操作和修改XML文档
B. W3C组织公布了DOM模型的规范,然后各个软件厂商(比如微软)再根据W3C
的规范开发DOM解析器,并且提供一系列的编程API,这些API都是遵守W3C规范的
C. DOM模型是W3C组织开发出来的一个在内存中表示XML数据的线性模型
D. 能使用JavaScript进行DOM开发,也能使用Java、C#
13. XML名称空间名是指( C )。
A. W3C制定的一个技术规范 B. 一个可以访问到的URI
C. 任何URI D. 紧跟在xmlns:后面的前缀名称
14. 当SAX解析器解析到文档中元素的开始标记时,会调用( A )方法。
A.public void startElement()
B.public void startDocument()
C.public void startPrefixMapping()
D.public void startDocumentLocator()
15. 以下事件处理函数哪一个不是SAX实现会产生的( C )
A void startDocument()
B void characters(char[] ch, int start, int length)
C void startElement(String uri, String localName, String qName)
D void endElement(String uri, String localName, String qName)
16. SAX的默认基类DefaultHandler类实现了那些接口( A )
A)Attributes接口
B)DTDHandler接口
C)ErrorHandler接口
D)ContentHandler接口
17. 在XML文档的第一条声明语句中,不能使用的属性是( D )
A、version B、encoding C、standalone D、 name
18. 不符合格式良好的XML文档要求的是( A )
A、文档可以有一个以上的根元素; B、有符合规范的声明语句;
C、每个元素有正确的起始、结束标记; D、元素正确嵌套,没有交叉现象出现;
19. 在进行属性声明时,错误的是( B )
A 标记中可以使用多个属性
B 属性可以出现在起始标记或结束标记中;
C 属性名是大小写敏感的;
D 属性值必须用引号引上;
20. 以下不属于XML语法规定的是( B )
A、元素必须正确嵌套
B、标记任意大小写
C、所有的属性值必须放在双引号或单引号中;
D、若文档没有DTD,属性值的默认类型是“CDATA”;
21. 在XML中,下列关于DOM的叙述不正确的。D
a) DOM是独立于开发语言和平台的,因此使用Visnal Basic、Java、Visual C++等
开发工具使用的DOM编程API是一致的
b) XML文档通过load方法被装载进内存后,在内存中形成一个DOM文档对象模型
树
c) 通过DOM API,软件开发人员可以控制XML文档的结构和内容
d)通过DOM在XML文档中只能按照顺序方式导航
22. XML中,(B)是文档对象模型DOM中的基本对象,元素、属性、注释、处理
指令等都可以认为是它。
A Document
B Node
C NodeList
D Element
23. 阅读下面XML文档,然后判断下列说法正确的是。C
a)
b)
c) tom是文本对象
d) tom是元素对象
24.
]>
关于上述Xml文档,以下描述正确的是( B )。
a) 该Xml文档中使用了外部DTD。
b) 通过浏览器打开上述Xml文档时,字符串jianwai street代替了&
location;
c) 该Xml文档不是有效的XML文档。
25. 以下关于XML文档的声明的语句正确的是 。D
A)
B)
C)
D)
二、填空题
1. ____名称空间__________是解决XML元素多义性和名字冲突问题的方案。
2. XML元素由___开始标记__________、结束标记和两者之间的内容三部分组成。
3. DOM全称为_Document Object Model__,DOM解析采用文档驱动,SAX解析
使用__事件__驱动。
4. SAX解析器是否报告XML声明给事件处理器?_____否______(填“是”或“否”)
5. 是__xml声明_________。
6. 属性类型设为ID,表明该属性的取值____必须唯一__________________。
三、简答题
1. 什么是XML?
2. 什么是SAX?简述SAX的工作原理。
3. SAX与DOM在解析器的核心分别是什么,他们的优缺点是什么,分别使用在处理
什么问题!
4.
件成立,如果有
5. 如果要实现Tag接口,可以通过扩展TagSupport这个类,来写自己需要的方法,
而不需要把Tag接口中的所有方法实现。
6. 用 JAXB将XML数据转化为java对象的步骤
7. Tld文件的功能及相应标签处理类的tld文件的配置
四、程序填空题
1. 使用DOM解析XML文件代码如下,读程序完成填空。
代码如下:
代码如下:
import .*;
import s.*;
import .*;
public class ExamTest {
public static void main(String args[]) throws Exception{
DocumentBuilderFactory factory =
tance();
DocumentBuilder builder = umentBuilder();
//DOM解析返回文档对象
①_Document__ doc = (new File(""));
//获得文档根元素节点
②_Element__ root = umentElement();
//获得根节点下元素标记名为student的所有的元素节点的集合
③_Nodelist_ nl = mentsByTagName("student");
for (int i = 0; i < nl. getLength(); i++) {
//获取nl集合中的第i个节点对象
Element stu = (Element)(i);
//获得元素student属性的集合
④_NamedNodeMap__ map = ributes();
//循环输出map中所有的属性
for (int k = 0; k < gth(); k++) {
⑤_Attr_ attrNode = (⑤_Attr_)(k);
(e() + "="
+ ue() + " ");
}
//获得student标记下所有子节点集合
NodeList eNl = ldNodes();
//遍历所有子节点
for (int j = 0; j < gth(); j++) {
⑥_Nodelist_ child = (j);
if (eType() == T_NODE) {
Element eNode = (Element)child;
}
if (eType() == _NODE) {
⑦_Text__ tNode = (⑦_Text_)child;
}} }}}
2. 例如jsp中要求取出request中保存的一个属性username,以前习惯的方式:
<%
String username=(String)ribute("user");
n(username);
%>
或者
<%
String username=(String)ribute("user");
%>
<%=user%>
在使用jstl后,则可以直接书写为:
或者直接
${user}) 或
${param.[ " user " ]}
版权声明:本文标题:XML基础复习习题2016 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/b/1713491055a637326.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论