文档库 最新最全的文档下载
当前位置:文档库 › WebService总结

WebService总结

第一章:

1、使用XML的优点是什么?

①XML可以从HTML中分离数据,即能够在HTML文件之外将数据存储在XML文档中。②XML可用于交换数据。把数据转换为XML格式存储将大大减少交换数据时的复杂性,还可以使用这些数据能被不同的程序读取。

③XML可应用于B2B中。④利用XML可以共享数据。XML数据以纯文本格式存储,使得XML更易读、更便于记录、更便于调试,使不同系统、不同程序之间的数据共享变得更加简单。⑤XML可以充分利用数据。XML是与软件、硬件和应用程序无关的,数据可以被更多的用户、设备所利用,而不仅仅限于基于HTML标准的浏览器。

⑥XML可用于创建新的语言。

2、相对于EDI的结构化信息技术而言,XML的优势有哪些?

①成本低,XML不需要VAN的高额费用,中小企业也负担的起。②定制商业规则,XML允许用户创建自己的商业规则和格式。③容易理解,EDI需要使用翻译软件来得到贸易伙伴的信息格式,而XML通过免费下载的解析器就可以很容易的翻译。④平台独立,XML是跨平台的语言,不管是什么平台,都能进行数据交换。

3、XML与HTML的对比:

对比项XML HTML

可扩展性可扩展,能够定义新的标记元素不可扩展,标记元素都是固定的

侧重点侧重于结构化的描述数据侧重于如何显示数据

语法语法严格,要求标记嵌套、配对和

遵循DTD树形结构不要求标记的嵌套、配对等,不要求标记之间具有一定的顺序

可读性结构清晰、易于阅读难于阅读可维护性易于维护难于维护

数据和显示关系数据描述与显示方式相分离,具有

保值性

数据和显示整体合为一体,不具保值

4、从以下几个方面定义XML:

①XML是一种类似于HTML的标记语言。②XML是用来描述数据的。③XML的标记不是在XML中预定义的,用户可以自定义标签。④XML使用文档类型定义(DTD)或者模式(Schema)来描述数据。

5、XML文档有两个主要部分组成:序言和文档元素(也叫根元素)。

6、XML文档内容的主体部分一般由:根元素、子元素、属性、注释和内容组成。

7、XML元素包含:其他元素、字符数据、字符引用、实体引用、处理指令、注释或CDATA部分。

8、XML元素的命名规则:

①元素的名字可以包含字母、数字和其他合法字符,且区分大小写。②元素的名字不能以数字或标点符号开头。③元素的名字不能以XML(或者xml、Xml、xMl等)开头。④元素的名字不能包含空格,并且避免使用“-”、“.”、“:”等特殊字符。⑤元素的命名应该遵循简单易读的原则。⑥如果XML文档与数据表对应,应尽量让XML文档中元素的命名和数据库中字段的命名保持一致,这样可以方便数据变换。⑦非英文字符、字符串也可以作为XML元素的名字,如<姓名>、<年龄>等,但为了得到更好的支持,建议使用英文字母来进行命名。

9、XML文档中一共有四类元素:空元素,仅含文本的元素,仅含子元素的元素,含子元素、文本或混合元素的元素。

10:在XML文档中使用元素时的要求:

①元素必须含有起始标签和结束标签。②在没有内容(空元素)的情况下,建议使用省略写法。③标签名称必须符合XML命名规则。④元素必须正确的嵌套。

11、在XML中使用PI(处理指令)的好处:

①可以作为脚本或服务端包含文件的挂钩。②可以作为扩展模式的机制。③它是一种无须改变DTD认证就可以扩展文档的方法。④在不影响文档结构的情况下,通过在XML文件中嵌入处理指令,将信息以文档的形式传递给应用程序。

12、格式良好的XML文档规则:

①必须有声明语句。②注意大小写。③XML文档有且只有一个根元素。④属性值使用引号。⑤所有的标记必须有相应的结束标记。⑥所有的空标记也必须被关闭。⑦标记必须正确嵌套。⑧处理特殊字符。

13、一个格式良好的XML文档满足的条件:

①语法合乎XML规范。②元素构成一个层次树,只有一个根节点。③除非提供了DTD,否则没有对外部实体的引用。

14、XML处理特殊字符的两种方式:字符引用和实体引用。

15、XML是由SGML扩展来的。

第二章:

1、引入DTD的优势:

①每个XML文件可以携带一个自身格式的描述。②不同组织的人可以使用一个通用DTD交换数据,应用程序可以使用一个标准DTD校验从外部世界接收来的XML数据是否有效。③便于在网络上进行数据的共享和交互。网络上其他用户补充的数据,只需要根据公用的DTD规范来建立即可。

2、DOCTYPE声明的组成部分:关键字、根元素名称、可选的外部标记符、可选的标记声明块。

3、使用外部DTD的好处:他可以方便高效的被多个XML文档所共享,只要写一个DTD文档,就可以被多个XML文档所引用。

4、一个DTD文档包含:元素的定义规则、元素间关系的定义规则、元素可使用的属性、可使用的实体或符号规则。

5、XML按照元素类型可分为五类:ANY类型、EMPTY类型、#PCDATA类型、父元素类型、混合元素类型。

6、正则表达式的元组运算符:

符号意义

?所修饰的元素可以不出现或只出现一次

* 所修饰的元素可以不出现或出现多次

+ 所修饰的元素必须至少出现一次以上

无符号没有符号修饰的元素只能出现一次

()用来给元素分组

| 只能在列出的对象中选择一个

,列出的对象必须按指定顺序出现

7、ATTLIST声明构成部分:ATTLIST关键字、属性修饰的元素名称、零个或多个属性定义。

8、属性取值方式:

取值含义

#REQUIRED 元素的每个实例必须包含该属性

#IMPLIED 元素的实例可以选择性的包含该属性

#FIXED value 固定取值的属性,该属性值不允许被其他值替代

默认值事先定义了默认的属性

9、使用实体的好处:

①减少出错率,文档中多个相同的部分只需要输入一遍即可。②提高维护效率,比如多个文档都包含地址信息的实体,如果需要修改这个地址信息,只需要修改最初定义的实体语句即可。

10、XML定义的两种类型的实体:预定义实体、自定义实体。

11、预定义实体

实体用途

< 通常用来替换字符小于号(<)

> 通常用来替换字符大于号(>)

& 通常用来替换字符(&)

" 可用来替换字符串中的字符双引号(”)

' 可用来替换字符串中的字符单引号(’)

12、在DTD中,元素类型通过ELEMENT标记声明,实体类型通过ENTITY标记声明,属性通过ATTLIST标记声明的。

13、属性类型设置为ID表明该属性的取值唯一,IDREF属性的值指向文档中其他地方声明的ID类型的值。

14、实体是XML引用一个数据项的方法,他通常是文本,也可以是二进制数据。

15、DTD的属性类型有:CDATA、NMTOKEN/NMTOKENS、ID IDREF/IDREFS、枚举类型等。

16、DTD提供了XML文档所包含的元素、属性、实体及相互关系的定义。

17、DTD可以在XML内部定义也可以在外部定义。

18、DTD文件是一个ASCII的文本文件,后缀名为.dtd。

19、外部DTD实例:

1)xml文档:

(关联)

李明18

张燕19

赵三20

2)dtd文档:

20、内部DTD实例:

AUTHOR CDATA #REQUIRED

EDITOR CDATA #IMPLIED

DATE CDATA #IMPLIED

EDITION CDATA #IMPLIED>

]>

klkkk135863

45313511634131135

第三章

1、正则表达式常用的符号及含义

2、 在XML 中,命名空间是被统一资源标识符URI 分配或识别的一个虚拟空间

3、Schema 是替代DTD 的模式定义语

4、Schema 由导言、不定数量的元素定义和声明组成

5、所有Schema 文档都必须要使用schema 作为其根元素

6、XML Schema 中的数据类型可分为简单类型和复合类型

7、复合类型元素通过complexType 声明,包含其他元素、属性和混合内容 8、常用于定义复合类型的元素有:sequence 、choice 、group 、all 9、XML Schema 中的数据类型可分类:简单类型和复合类型

10、复合元素的type 属性的值必须通过外部引用指定一个复合数据类型

11、Schema 声明的属性是没有顺序的,只能是简单类型,只能包含文本,且没有子属性 12、使用attributeGroup 元素可以把一组属性声明组合在一起,以便定义复合类型时使用 13、include 元素用于包含处于同一个命名空间下的Schema 文件 14、import 元素用于可包含处于不同命名空间下的Schema 文件 15.对于下列XML 文档:

正则表达式常用的符号及含义

字符 描述

\ 降下一个字符标记为一个特殊字符或一个原义字符等。例如,’n ’匹配字符”n ”。”\n ”匹配一个换行符。序列’\\’匹配”\”,而”\(”则匹配”(” ^ 匹配输入字符串的开始位置。如果设置了RegExp 对象的Multiline 属性,^也匹配’\n ’或’\r ’之后的位置

$ 匹配输入字符串的结束位置。如果设置了RegExp 对象的Multiline 属性,$也匹配’\n ’或’\r ’之前的位置 * 匹配前面的子表达式零次或多次。 + 匹配前面的子表达式一次或多次。 ? 匹配前面的子表达式零次或一次。 {n}

n 是一个非负整数。匹配确定的n 次。

{n,} n 是一个非负整数。至少匹配n 次。

{n,m} m 和n 均为非负整数,其中n<=m 。最少匹配n 次且最多匹配m 次。 x|y 匹配x 或y 。

[xyz] 字符集合。匹配所包含的任意一个字符。

[^xyz ]

负值字符集合,匹配未包含的任意字符。

[a-z] 字符范围,匹配制定范围内的任意字符,例如’[a-z]’可以匹配’a ’到’z ’范

围内的任意小写字符 [^a-z ] 负值字符范围,匹配任何不在范围内的任意字符,例如,’[^a-z]’可以匹配任何不在’a ’到’z ’范围内的任意字符 \d 匹配一个数字字符,等价于[0~9] \D

匹配一个非数字字符,等价于[^0~9]

玩具

16

上海

200000

135********

orderID="A002" orderDate="2010-7-22">

文具

17

青岛

266000

0532-********

16、创建一个Schema,并应用于给定的XML文档。要求如下:

Order元素在XML文档中可以出现多次,但是至少要出现一次。

OrderID值的格式必须是AXXX,其中X为0--9的数字

number的值要在1--999之间

zip元素的内容的格式必须是XXXXXX,其中X为0--9的数字,该元素可选。

phoneno允许如下的组合:11位手机号、3位区号+8位号码、4位区号+8位号码。order.xsd

17、说明使用Schema代替DTD的原因。

①DTD是基于正则表达式的,描述能力有限。②DTD没有数据类型的支持,在大都数应用环境下能力不足。

③DTD的约束定义能力较弱,无法对XML实例文档做出更细致的语义限制。④DTD不够结构化,重用的代价相对较高。⑤DTD并非使用XML作为描述手段,而DTD的构建和访问并没有标准的编程接口,无法使用标准的编程方式进行维护。⑥DTD不支持命名空间。

第四章

1、CSS可以格式化XML文档,能够很好的控制输出的样式,但只能静态控制文档的样式或外观。

2、XSL实际上包含三种语言:XSLT、XPath和XSLF 。

3、从狭义上理解,XSL和XSLT是一样的。

4、XPath可以用于XSLT样式表内来定位XML树中的某个位置。

5、XPath表达式由左至右读取,路径中的各个点由一个前向斜杠(/)分隔。

6、XPath主要有四种数据类型:节点集、布尔类型、数值类型、字符串。

7、XPath中,节点之间的关系有:父、子、同胞、先辈、后代。

8、XPath使用路径表达式在XML文档中选取节点,并可以使用谓语查找某个特定的节点或者包含某个值的节点。

9、如果需要在转换过程中进行运算,可以在XPath表达式中使用数学运算符函数,在XPath表达式中可以使用:常规的算术运算符、关系运算符、逻辑运算符等。

10、XSL文档本身是格式良好的XML文档。

11、XSL模板由两部分组成:匹配模式和执行。

12、在XSLT中,可以使用元素来合并多个样式表包含某个值的节点。

13、对于下述XML文档:

遥控车

300

北京

100000

订书机

180

青岛

266109

14、根据要求编写并在XML文档上应用对应的XSL样式表:

(1)以表格的形式显示XML文档中存储的所有数据。

(2)显示orderID为A002的订单信息。

(3)显示北京的订单信息。

Order.xsl

订货单

订货单

namenumbercityziporderIDorderDate

15、简要描述XSL解析XML文档的过程。

首先是根据XML文档构造源树,然后根据XSL规则将源树转换为结果树,生成结果树后,对其进行解释,格式化为一种适合显示、打印或是播放的格式。

16、XSL处理器负责实现转换过程。

首先,XML文档被解析成DOM树存放在内存中,接着对文档进行分析,每一个DOM树中的结点都会与一个模板相比较,当二者匹配时,就会按照模板中定义的规则进行转换,否则继续往下匹配。如此循环,直到整个文档处理完毕。

第五章

1、XML DOM是XML Document Object Model 的缩写,即XML文档对象模型,定义了访问和处理XML文档的标准方法。

2、用DOM处理XML的优越性:

①DOM能够保证XML文档的语法正确和格式正规②DOM能够从语法中提取内容③DOM能够简化内部文档操作④DOM能够贴切地反映典型的层次数据库和关系数据库的结构。

3、在DOM中,一般将XML逻辑结构秒数成树。DOM树结构中,XML标记(和它的值)看做是一个(Node)对象。节点对象是DOM树的基本对象,XML中共用了12种结点类型,常见的结点类型有文档、元素、属性、文本、注释5种。

4、

(元素结点)(文本结点)(注释结点)(属性结点)

-----(结点属性关系) —(父子结点关系)

5、(1)文档:XML树中所有节点的容器,也成为文档根。Document接口指定DOM树的顶部结点,并且包含完整的文档(XML或HTML)。Document接口继承自Node接口。

(2)元素 :XML的基本构件,可以包含其他元素、文本结点或两者的组合用来作为其子结点。

(3)文本:该接口(Text)表示元素或属性值的文本内容(XML中的字符数据),它可以包含信息也可以是空白,Text结点没有子结点。

(4)属性:Attribute对象表示文档中一个元素的属性。

(5)结点:Node接口是DOM树的重心,Node对象构成了DOM树的核心结构。DOM数据类型:Document、Element、Text和Attribute,在DOM树中都可表示为结点。都是继承自Node接口。

(6)NodeList:表示一个结点对象的集合。

6、XML最主要的两种解析方式:

①由W3C制定的DOM方式:DOM是文档驱动的解析方式,解析器会读取整个XML文档,然后在内存中构造一颗完整的DOM树,方便操作树中的任意结点。当处理大型文档时会占用大量内存,并且加载速度和处理性能下降明显。②由David Megginson领导的SAX方式:事件驱动的解析方式,当解析器发现元素开始或元素结束、文本、文档开始或结束等标记时,会触发相应的事件,开发者可以通过编写响应这些事件的代码来保存数据。

7、解析XML的API种类:

①W3C DOM:规范了以DOM方式操作XML文档的方法,W3C DOM API所在的包是org.w3c.dom ②SAX:也是访问XML文档的接口,不是W3C的推荐标准,几乎所有的XML解析器都会支持它,用起来不像DOM那么直观。SAX API所在的包是org.xml.sax ③JAXP:java解析XML应用接口。没有重新定义DOM和SAX,而是提供一种机制可以通过即插即用接口在java应用程序中访问解析器。④JDOM:开源的XML解析类库,提供了一种基于Java的特定文档对象模型,不符合W3C DOM和JAXP规范,简化了与XML的交互,比使用DOM 速度更快。⑤DOM4J:开源的XML解析类库,提供了一种基于Java的特定文档对象模型,也提供了对W3C DOM、SAX、JAXP的支持。DOM4J API所在的包是org.dom4j。

8、JAXP接口包含的三个包:org.w3c.dom、org.xml.sax、javax.xml.parsers(解析器工厂工具,以供程序员获得并配置特殊的语法分析器)

9、常用的DOM接口有:DoucumentBuilderFactory、DoucumentBuilder、Doucument、

Node、NodeList、Element、Attr等。

10、DOM应用:遍历XML、创建XML、修改XML。

11、DOM解析器属性,以dnf作为文档构建器实例,介绍配置解析器时常用的属性、功能和设置方法:

①Coalesce:指定解析器是否把字符数据(CDATA)转换成Text结点,属性值为true时,解析器会把每个CDATA结点都转换成Text结点,并将其添加到相邻的文本结点dbf.setCoalescing(true); ②ExpandEntityReferences:指定解析器是否展开实体引用结点,true时,解析器将展开实体引用结点dbf.setExpandEntityReferences(true);③IgnoreComments:指定解析器是否忽略XML文档中的注释,为true 时,忽略文档中的注释 dbf.set IgnoreComments(true);④IgnoreElementContentWhitespace:指定解析器在处理XML文档时,是否忽略其中的无意义空格(文档空白),为true时,删去可忽略的空白dbf.set IgnoreElementContentWhitespace(true);⑤NamespaceAware:是否需要理解命名空间,true时支持XML中的命名空间 dbf,setNamespaceAware(true);⑥Validate:是否需要对其进行验证dbf,setValidating(true)。

12、DoucumentBuilderFactory类、DoucumentBuilder类是非线程安全的,开发者应确保该类同一实例不被多个线程同时使用。

13、通过设置DoucumentBuilderFactory实例的属性,可用于配置解析器,用于控制对XML文件的解析粒度。

14、请描述常见的基于Java的XML解析器及其各自的特点(最少描述三个)。

①JAXP:轻量级的包装器API即JAXP,Java API for XML Parsing java解析XML应用接口。支持使用SAX、XSLT和DOM的XML处理,并为SAX和DOM API提供一致性,没有重新定义DOM和SAX,而是提供一种机制可以通过即插即用接口在java应用程序中访问解析器。②JDOM:开源的XML解析类库,提供了一种基于Java的特定文档对象模型,不符合W3C DOM和JAXP规范,简化了与XML的交互,比使用DOM 速度更快。

③DOM4J:开源的XML解析类库,提供了一种基于Java的特定文档对象模型,也提供了对W3C DOM、SAX、JAXP 的支持。还提供了许多超出基本XML文档表示的功能,大量使用接口和抽象类,并集中引入了Collections 类,使操作的灵活性非常高。

第六章

1、SAX是Simple API for XML的缩写。SAX不是W3C的推荐标准,是开源的产物。SAX是基于事件驱动的、轻量型的XML处理方法,SAX基于流式处理,不需要读入整个文档,而是边解析边处理。

2、DOM和SAX其实都是与语言无关的,并非Java所独有,只要有相应的语言实现,DOM和SAX可以应用在任何面向对象的语言中。

3、SAX中的事件:

①startDocument事件:表明SAX解析器发现了文档的开始。②endDocument事件:表明SAX解析器发现了XML文档的结尾。③startElement事件:表明SAX解析器发现了XML文件中一个元素的起始标签。④characters事件:表明SAX解析器发现了XML文档中一个元素的文本信息。⑤startElement事件:表明SAX 解析器发现了XML文件中一个元素的结束标签。

4、SAX的API中最重要的组成部分的接口XMLReader和类DefaultHandler。

5、SAXParserFactery类是SAX解析器工厂类,开发者通过该工厂类实例来获得一个具体的解析器对象(SAXParser)。

6、DefaultHandler是SAX事件的核心处理类,该类实现了四个核心SAX2处理程器接口。是SAX事件的回调处理类。

7、ErrorHandler接口是SAX的错误处理接口。

8、SAX中,开发者可以通过实现XMLFilter接口进行解析过滤,并可通过多个过滤器类相互“封装”形成过滤器链。XMLFilter有两个方法:setParent(XML Reader parent):设置父XMLReader,该方法让应用程序将这个过滤器连接到它的父XMLReader(也可能是另一个过滤器)。 XMLReader getParent():获取父XMLReader,该方法用应用程序可以查询父XMLReader(也可能是另一个过滤器)。

9、JDOM是一个开源的、专为Java语言提供XML解析功能的项目。继承了DOM和SAX处理的特点,并不是一个简单地替代品。常用类包括SAXBuilder、DOMBuilder、Document、XMLOutputter、Element、Attribute 等。不是JDK中自带的包,需要单独下载,并添加到类路径中才能使用。

10、请描述使用DOM、SAX处理XML的区别。

①DOM:规范了以DOM方式操作XML文档的方法②SAX:也是访问XML文档的接口,不是W3C的推荐标准,几乎所有的XML解析器都会支持它,用起来不像DOM那么直观。

11、SAX、DOM、JDOM技术的优缺点比较。

名称优点缺点适用场合

SAX 1.无需将整个文档加载到

内存,所以内存消耗少

2.腿模型允许注册多个

ContentHandler 1.没有内置的文档导航支持

2.不能随机访问XML文档

3.不支持在原地修改XML

4.不支持名字空间作用域

适用于只从XML文档读取

数据的应用程序(不可用

于操作和修改XML文档)

DOM 1.易于使用

2.丰富的ASI集合,可用

于轻松的导航

3.整棵树加载到内存,允

许对XML文档进行随机

访问1.整个XML文档必须一次性解

析完

2.整棵树加载到内存中成本较

3.一般的DOM结点对于必须为

所有结点创将对象的对象类

型绑定不太理想

适用于需要修改的XML文

档的应用程序或XSLT应

用程序(不可用于只读

XML应用程序)

JDOM 1.基于树的处理XML的

Java API,把树加载在

内存中

2.没有向下兼容的限制,

因此比DOM简单

3.速度快,缺陷少

4.具有SAX的Java规则1.不能处理大于内存的文档

2.DOM表示XML文档逻辑模型,

不能保证每个字节真正变换

3.针对实例文档不提供DTD与

模式的任何实际模型

4.不支持与DOM中相应遍历包

适用于既具有树的遍历,

也有SAX的Java规则,

在需要平衡时使用

第七章

1.Web Services应用程序的特征:封装性;松散耦合;使用标准协议规范;高度可集成性;易构建。

2.简要描述Web Services的主要技术及各种技术的作用:

①XML 。XML是Web Services平台中表示数据的基本格式,采用自描述的数据结构,能够以简单的文本文档格式存储传输读取数据。XML是Web Services标准的基础,也是Web Services模型的核心。②SOAP。简单对象访问协议,利用SOAP可以在两个或多个对等实体之间进行信息交换,并可以使这些实体在分散的分布式应用程序中相互通信。③WSDL。用于描述网络服务及其访问信息,用于定义Web Services以及如何调用它们④UDDI。它提供了在Web上描述并发现商业服务的框架,其核心组件是UDDI商业注册(白页White Page,黄页Yellow Page,绿页Green Page)。

3.什么是SOAP?简要描述SOAP的组成。

(1)SOAP是一种基于XML的协议。是分布式系统之间交换信息的轻量级方法。(2)SOAP是基于XML语言和XSD标准的,其组成:①SOAP信封。②SOAP编码规则。③SOAP RPC表示。④SOAP绑定。

4.实现Web Services的基本步骤

①服务提供方将Web服务创建为基于SOAP协议的服务接口,然后将这些服务部署到服务容器中,以便其他用户调用。②服务提供方使用服务代理注册基于WSDL的服务描述,服务代理方通常是UDDI注册表。③UDDI 注册表将服务描述存储为绑定模板和到服务提供方环境中WSDL的URL。④服务请求方通过查询UDDI注册表找到所需服务并获取绑定信息和URL,已确定服务提供方。⑤服务请求方使用绑定信息激活服务提供器,并检索已注册服务的WSDL服务描述,通过创建客户代理应用程序,建立与服务器间的通信。⑥最后,服务请求方与服务提供方通信,并通过调用服务容器中的服务进行信息交换。

5.Web Services体系结构基于三种逻辑角色:服务提供者,服务注册中心,服务请求者。

6.Web Services体系结构中,角色之间可以单次或反复出现发布,查找,绑定三种操作。

7.最简单的协议栈包括:网络层的HTTP,基于XML的消息传递层的SOAP协议以及服务描述层的WSDL。

8.Web Services开发生命周期分为:构建,部署,运行,管理。

9.Web Services应用在跨防火墙通信,应用程序集成,B2B集成和数据重用等场合中会体现极大的优势。其局限为:单机应用程序,局域网应用程序。

10.在Web Services体系结构中,根据功能要求的不同,可以实现基于消息路由的同步/异步通信模型或基于RPC的异步模型。

11.Web Services(Web服务)是一种分布式的计算技术。

第八章

1.基于点对点连接创建SOAP客户端的步骤(直接连接)

①创建SOAP连接②创建SOAP消息工厂③创建消息④填充消息⑤添加附件⑥发送消息并接收响应⑦关闭连接

2.SOAP的两个目标:简单性,可扩展性

3.JAXM提供两种类型的连接:独立的点对点连接,到消息提供者的连接

4.编写服务器Servlet应用,需扩展JAXMServlet,并实现OnewayListener接口或ReqRespListener接口。

5.SOAP消息包含:Envelope(信封),Header(报头),Body(主体),Fault(错误),attachment(附件),其中Envelope,Body部分必须在SOAPMessage中出现。

6.SOAP=RPC(调用途径)+HTTP(底层通信协议)+XML(数据传送的格式)

7.通过消息提供者发送信息的基本步骤:(间接连接)

①获取用JNDI命名服务注册的提供者连接工厂②使用工厂生成与JAXM提供者的连接③使用连接来生成消息工厂④使用消息工厂来生成消息(指定配置文件)⑤填充消息⑥使用与JAXM提供者的连接来发送消息(异步发送且不需等待响应)

8.javax.xml.soap.SOAPElement接口是JAXM DOM API中的一个关键接口,是JAXM API中大部分SOAP对象的直接超级接口。

9.SOAP应用模式:请求/响应模式,多消息异步响应模式,单向模式,事件通知模式。

10.SOAP消息中间方分为:转发中间方,活动中间方。

11.在JavaEE平台里,开发Web服务,通常使用JAX-RPC,JAXM。

第九章

1. WSDL是专门用来描述Web Service的一种语言;

WSDL文档包含以下8个关键的构成元素:

该元素是WSDL文档的根元素,用来定义Web Service 的名称,并声明WSDL中使用的命名空间。②该元素用来描述Web Service 与调用者之间传递消息时所使用的数据类型。WSDL支持任何类型系统,默认采用XML Schema 类型系统。③该元素是Web Service 与调用者之间传递的消息的逻辑定义。一个消息可能包含多个部分,每一部分用元素表示,可以使用中定义的数据类型来定义每个的类型。④该元素是Web Service 中所支持的操作的抽象定义。通常一个operation描述一个假务访问点的请求/响应消息对。⑤该元素是某个访问点所支持的所有操作的抽象定义。⑥该元素定义了特定定义的操作和消息的格式、协议之间的绑定。⑦该元素定义的Web Service的绑定地址。⑧该元素描述了相关的服务访问点的集合。上述元素中,元素是Web Service的抽象定义,与具体的Web Service部署细节无关,可以被重用;而元素是Web Service的具体描述,其中定义了Web Service的技术细节。

2.WSDL支持以下4种类型操作:

①One-way:单向操作。此类型的操作可以接收消息,但不会返回响应,通常由一个元素定义。②Request-response:请求响应操作。③Solicit-response:征求响应操作。④Notification:通知操作。

3.WSDL规范中定义了3种绑定扩展:

①SOAP绑定;②HTTP GET POST绑定;③MIME绑定。

其中SOAP绑定是最常用的一种方式。

WSDL虽然支持4种操作类型:单向、请求响应、征求响应、通知。

4.UDDI(Universal Description,Discovery and Integration,统一描述、发现和集成)是一种基于Web 的分布式的Web Service信息注册中心的实现规范。UDDI规范的实现方案称为UDDI注册中心。分为公共和私有两种。

5.UDDI注册中心的数据可以分为以下三类:

①百页:企业的基本信息;②黄页:根据企业的业务类别来划分的信息类别;③绿页:体描述企业发布的Web Service的行为和功能等。UDDI注册中心本身也是一个Web Service,用户可以使用UDDI规范中定义的

SOAP API查询注册信息。

6.UDDI数据结构主要包括下列五种元素:①:表示商业实体。②表示与其他商业实体的业务关系。③:表示业务服务。④:表示绑定模板。⑤:表示技术模型。

还有以下两个辅助数据结构:⑥:使包含常见的标识信息,如果标识了,可以极大提高查询API的搜索能力。

可根据任何分类机制对进行分类,如果标识了,可以极大提高查询API的搜索能力。

7.UDDI内置支持以下三种业务标准分类系统:①NAICS:北美工业分类系统;②UNSPSC:通用标准产品和服务分类;③ISO3166:基于地理位置的标准分类系统。UDDI为指定了128位的通用唯一标识符(UUID),这些标识符可作为访问UDDI注册中心中特定数据的key。

8.①UDDI规范定义了查询和发布两类API,可用于与UDDI注册中心结点进行通信。

②WSDL和UDDI的数据结构具有映射关系。

第10章

1、JAX-RPC与过去的RPC机制之间的区别在于数据交换格式,即JAX-RPC的方法调用参数以及返回值通常以SOAP消息格式传输。

2、JAX-RPC通过执行Java类与XMI数据之间的自动映射,抽取和隐藏SOAP和XML数据类型的复杂性。

3、JAX-RPC规范要求支持大多数的Java原始数据类型及原始数据类型对应的包装类型,此外,对String、Date、Calendar等对象类型提供了支持。

4、JAX-RPC可以将XML数组映射为Java数组。

5、JAX-RPC支持将XML结构和复杂值类型映射为带getter和setter方法的JavaBean。

6、Wscompile主要用来生成在JAX-RPC客户端和服务中使用的stubs、ties、serializers和WSDL文件。

7、Wsdeploy工具读取一个WAR文件和jaxrpc-ri.xml文件,然后产生另外一个可以用来发布的WAR文件。

8、实现基于JAX-RPC的服务有两种方式:使用Java类开发JAX-RPC服务和使用WSDL文档开发JAX-RPC服务。

9、JAX-RPC客户端编程模型主要有三种:占位程序、动态调用和动态代理。

10、简述创建JAX-RPC服务器端的步骤。①定义远程接口(服务定义)。②实现远程接口(服务实现方案)。

③配置服务。④包装和部署服务。

(具体:①.定义远程接口:所涉及的编程规则:远程接口必须扩展java.xml.Remote接口,所有方法必须抛出java.xml.RemoteException异常;远程接口中不能包含任何静态常量的声明;远程接口中的方法的所有参数和返回值为JAX-RPC支持的部分数据类型,否则需要使用自定义的串行器和反串行器进行Java与XML之间的相互映射。②实现远程接口:就是通过自定义类来实现远程接口中定义的所有已发布的方法。③配置服务:要配置服务,需要创建一个XML格式的文件,文件中应提供如下信息:服务名称;包含占位程序和tie 的程序包的名称;生成的WSDL及其XML Scheme的目标命名空间;远程接口及其实现方案的类名称。

04.打包部署。)

11、简述创建JAX-RPC客户端的步骤。

(1)JAX-RPC客户端API(2)JAX-RPC客户端编程模型:①基于动态调用的客户端:01实例化一个没有WSDL的Service类。02实例化一个Call对象代理,并对其进行设置。03调用Call对象的invoke方法。②基于动态代理的客户端:01用WSDL实例化一个Service对象。02实例化一个代理。03调用代理的操作。12、RPC协议建立在某些协议(如TCP或UDP)之上,为通信程序之间携带信息数据,在OSI网络通信模

型中,RPC跨越了传输层和应用层。

13、远程过程调用流程:

首先,调用进程发送一个有进程参数的调用信息到服务进程,然后等待应答信息;在服务器端,进程保持睡眠状态直到调用信息到达为止,当一个调用信息到达,服务器获得进程参数,计算结果,发送答复信息,然后等待下一个调用信息;最后,客户端调用过程接收答复信息,获得进程结果,然后调用执行继续进行。

14、JAX-RPC体系结构由以下重要元素组成:JAX-RPC服务程序;JAX-RPC客户程序;stub和tie;串行化和反串行化;JAX-RPC运行时环境。

15、反串行化和串行化:在基于JAX-RPC的Web服务场景中,调用JAX-RPC服务时,JAX-RPC运行时将基于XML的RPC调用转换为其对应的Java对象表示法,然后使用它们执行所需的服务,该过程称为反串行化。执行该操作之后,服务通过该返回的Java对象转换为基于XML的数据表示法,将调用返回给自己的服务客户端,该过程称为串行化。

16、JAX-RPC的核心类和接口位于包javax.xml.rpc中,而javax.xml.rpc.handler包则提供了运行时核心类和处理SOAP消息的核心类。

17、JWSDP的核心工具是wscompile和wsdeploy,这两个工具是由JAX-RPC标准实现提供的,它们和JWSDP 包一起发布。

相关文档
相关文档 最新文档