一、单项选择填空题(每空3分,共24分)
1.下列哪个协议是传输层的协议 A
A.TCP
B.IP
C.SMTP
D.SNMP
E.FTP
2.下列哪一个HTTP请求头部字段可以声明客户端的浏览器类型 C
A.GET
B.Host
C.User-agent
D.Connection
E.Accept-language
3.下列哪一个是不正确的URL D
A.u.edu/coliege/science/computer/computer.htm
B.ftp://ftp.sjtu.edu/pub/
C.mailto:******************.edu
D.file:///c:/html/sample.htm
E.smtp://******************
4.下列哪个样式表的优先级最高: D
A.浏览器缺省样式(Browser default Style)
B.外部样式表(Extenal Style Sheet)
C.内部样式表(Internal Style Sheet)
D.内嵌样式(Inline Style)
E.定制样式表(Customized Style Sheet)
5.下列哪个对象可以维护B/S客户端的会话状态 A
A.HttpSession
B.HttpServletRequest
C.HttpServletResponse
D.PrintWriter
E.ServletContext
6.下列哪种不是XML的应用
A.WSDL
B.SOAP
C.HTML
D.BPEL
E.XPDL
7.在下列SOA的构成元素中,哪一个是质量方面的
A.传输
B.业务过程
C.服务描述
D.服务
E.事务
8.AJAX技术使用的是哪种脚本语言 D
A.VC++
B.C#
C.Java
D.JavaScript
E.VBScript
二、论述题(共40分,每题8分)
1.请说明Servlet在处理HTTP请求时Forward和Redirect的区别。
Redirect是通过response对象完成的,例如:
response.deRedirectURL("/jasmine/login"));
所以它不能把客户端的任何信息传递下去,因为request对象并未被传递
Forward是通过ServletContext对象完成的,例如:
RequestDispatcher disp = ServletContext().getRequestDispatcher("web服务器主要提供什么服务f.jsp");
disp.forward(request, response);
所以可以把客户端的任何信息传递下去,因为request对象被传递
2.请说明SOA中服务注册中心的作用。
3.请说明DOM对XML的解析过程。
DOM 是用与平台和语言无关的方式表示 XML 文档的官方 W3C 标准。DOM 是以层次结构组织的节点或信息片断的集合。这个层次结构允许开发人员在树中寻特定信息。分析该结构通常需要加载整个文档和构造层次结构,然后才能做任何工作。由于它是基于信息层次的,因而 DOM 被认为是基于树或基于对象的。DOM 以及广义的基于树的处理具有几个优点:
n 首先,由于树在内存中是持久的,因此可以修改它以便应用程序能对数据和结构作出更改。
n 它还可以在任何时候在树中上下导航,而不是像 SAX 那样是一次性的处理。
n DOM 使用起来也要简单得多。
n 另一方面,对于特别大的文档,解析和加载整个文档可能很慢且很耗资源,因此使用其他手段来处理这样的数据会更好。这些基于事件的模型,比如 SAX。
n 选择 DOM 还是选择 SAX ?
n DOM 采用建立树形结构的方式访问 XML 文档,而 SAX 采用的事件模型。
n DOM 解析器把 XML 文档转化为一个包含其内容的树,并可以对树进行遍历。用 DOM 解析模型的优点是编程容易,开发人员只需要调用建树的指令,然后利用navigation APIs访问所需的树节点来完成任务。可以很容易的添加和修改树中的元素。然而由于使用 DOM 解析器的时候需要处理整个 XML 文档,所以对性能和内存的要求比较高,尤其是遇到很大的 XML 文件的时候。由于它的遍历能力,DOM 解析器常用于 XML 文档需要频繁的改变的服务中。
n SAX 解析器采用了基于事件的模型,它在解析 XML 文档的时候可以触发一系列的事件,当发现给定的tag的时候,它可以激活一个回调方法,告诉该方法制定的标签已经到。SAX 对内存的要求通常会比较低,因为它让开发人员自己来决定所要处理的tag。特别是当开发人员只需要处理文档中所包含的部分数据时,SAX 这种扩展能力得到了更好的体现。但用 SAX 解析器的时候编码工作会比较困难,而且很难同时访问同一个文档中的多处不同数据。
4.请叙述JavaBean持久化存档的特点。
当一个JavaBean在构造工具内被用户化,并与其它Bean建立连接之后,它的所有状态都应当可被保存,下一次被load进构造工具内或在运行时,就应当是上一次修改完的信息。为了能做到这一点,要把Bean的某些字段的信息保存下来,在定义Bean时要使它实现java.io.Serializable接口。例
5.请叙述Web服务器使用Cookie的各种目的。
Web服务器有多个使用cookie的目的:
如果服务器要求身份认证,但又不想在同一用户每次访问本Web站点时都麻烦他输入用户名和口令,那么可以设置一个cookie。
如果服务器想要记住用户的偏好,以便在他们后续访问期间有目的地提供广告,那么可以设置一个cookie。
如果web站点提供购物服务,那么服务器可以使用cookie跟踪用户购买的物品,就是建立一个虚拟的购物车。
需指出的是,cookie不适用于会从不同主机访问同一web站点的游动用户。这种情况下,该web站点会把同一个用户在不同主机上的使用看成是由新的用户执行的。
三、分析题(共36分,每题6分)
1.请以FTP为例,画图说明FTP请求是如何通过TCP和IP协议转换成在网络上传输的数据包的。
2.当我们使用JavaBean来表示一个统计图表时,我们希望显示一个表格,以及根据表格画的饼图,饼图应该根据表格数据的变化实现自动重绘。请问,此时表格和饼图应该设计成这个JavaBean的什么类型的属性?为什么?
3.绑定属性会在属性值发生变化时,通知所有相关的。举例来说,FileNameBean中的fileName属性就是一个绑定属性。一旦文件名发生变化,就会自动通知ImageViewerBean,然后由它加载新的文件。
4.为了实现一个绑定属性,你必须实现两个机制。
a)无论何时,只要属性的值发生了变化,该bean必须发送一个PropertyChange事件给所有已注册的。该变化可能发生在调用set方法时,或者当程序的用户做出某种动作时,例如编辑文本或选择文件。
b)为了使感兴趣的能够进行注册,bean必须实现以下两个方法:
void addPropertyChangeListener(PropertyChangeListener listener)
void removePropertyChangeListener(PropertyChangeListener listener)
5.假设我们要编写一个B/S的电子商务网站,在实现其购物车构件ShoppingCart之后,请用代码描述如何保持用户的购物车状态。
6.有些其他的系统看见我们的系统有良好的口碑,于是希望和我们的系统进行互联,大家认为应该用Web Service来实现互联。请问,为什么需要使用Web Service来实现互联?
Web Service 是一种新的web应用程序分支,他们是自包含、自描述、模块化的应用,可以发布、定位、通过web调用。Web Service可以执行从简单的请求到复杂商务处理的任何功能。一旦部署以后,其他Web Service应用程序可以发现并调用它部署的服务。
实际上,WebService的主要目标是跨平台的可互操作性。为了达到这一目标,WebService完全基于XML(可扩展标记语言)、XSD(XMLSchema)等独立于平台、独立于软件供应商的标准,是创建可互操作的、分布式应用程序的新平台。由此可以看出,在以下三种情况下,使用WebService会带来极大的好处。
长项一:跨防火墙的通信 长项二:应用程序集成 长项三:B2B的集成
长项四:软件和数据重用 从以上论述可以看出,WebService在通过Web进行互操作或远
程调用的时候是最有用的。
7.当我们实现了将系统功能包装成Web Service之后,有人说这个系统现在就是SOA架构的系统了,请问,这种观点对不对?为什么?
在理解SOA和Web服务的关系上,经常发生混淆。根据2003年4月的Gartner报道,Yefim V. Natis就这个问题是这样解释的:“Web服务是技术规范,而SOA是设计原则。特别是Web服务中的WSDL,是一个SOA配套的接口定义标准:这是Web服务和SOA的根本联系。”从本质上来说,SOA是一种架构模式,而Web服务是利用一组标准实现的服务。Web服务是实现SOA的方式之一。用Web服务来实现SOA的好处是你可以实现一个中立平台,来获得服务,而且随着越来越多的软件商支持越来越多的Web服务规范,你会取得更好的通用性。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论