Java WebService 笔试试题及详细答案_第1页
Java WebService 笔试试题及详细答案_第2页
Java WebService 笔试试题及详细答案_第3页
Java WebService 笔试试题及详细答案_第4页
Java WebService 笔试试题及详细答案_第5页
已阅读5页,还剩3页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

JavaWebService笔试试题及详细答案适用场景:后端开发初级笔试、接口开发岗位面试、WebService技术专项考核考试时长:60分钟满分:100分一、单项选择题(共10题,每题3分,共30分)1.下列关于WebService的核心定义,说法正确的是()A.一种本地进程间通信技术B.基于网络、跨平台、可互操作的分布式应用程序接口技术C.只能用于Java语言的接口调用技术D.基于HTTP协议的前端请求技术2.WebService通信的核心数据格式是()A.JSONB.XMLC.HTMLD.TXT3.下列不属于WebService三大核心技术的是()A.SOAPB.WSDLC.UDDID.REST4.SOAP协议的默认端口是()A.80B.443C.8080D.215.WSDL文件的主要作用是()A.传输接口请求数据B.描述WebService接口信息、方法、参数、返回值C.注册发布服务D.加密接口传输数据6.Java中用于开发WebService的主流原生注解是()A.@WebService、@WebMethodB.@Service、@RequestMappingC.@Controller、@ResponseBodyD.@FeignClient、@GetMapping7.下列关于SOAP消息结构,说法错误的是()A.必须包含Envelope根标签B.Header头部为可选节点C.Body主体为必选节点,存放请求响应数据D.Fault节点用于正常业务数据返回8.CXF框架的核心作用是()A.实现Redis缓存操作B.简化JavaWebService服务端和客户端开发C.实现数据库持久化D.处理消息队列消息9.WebService相较于HTTP接口(REST)的最大优势是()A.传输速度更快B.格式更简洁、占用带宽更小C.自带规范校验、安全性更高、适合严谨的企业级交互D.开发成本更低10.下列工具可用于测试WebService接口的是()A.Postman、SoapUIB.NavicatC.IDEAD.Maven二、填空题(共5题,每题4分,共20分)1.WebService三大核心组件分别是________、________、________。2.SOAP的中文全称是________,是一种基于________的简单对象访问协议。3.在JDK1.6+中,原生提供了________框架支持WebService开发,无需额外引入第三方依赖。4.WSDL文档中,________标签定义接口方法,________标签定义请求参数结构。5.跨平台WebService通信的核心原因是基于________和________标准,与开发语言、操作系统无关。三、简答题(共3题,每题10分,共30分)1.简述SOAP和REST接口的核心区别,以及各自的适用场景。2.简述WSDL文件的核心组成部分及各部分作用。3.简述Java开发WebService的两种主流方式(JDK原生、CXF)的优缺点。四、代码实操题(共1题,20分)使用JDK原生WebService注解,编写一个服务端接口和客户端调用代码:需求:1.服务端提供一个根据用户名和密码校验登录的接口;2.接口返回布尔值和提示信息;3.编写客户端代码调用该接口并打印结果。参考答案及详细解析一、单项选择题答案及解析1.答案:B解析:WebService是跨网络、跨语言、跨平台的分布式接口技术,主打异构系统互操作;并非本地通信、不局限于Java,也不是前端请求技术。2.答案:B解析:传统WebService基于SOAP协议,强制使用XML作为数据传输格式;JSON是REST接口主流格式。3.答案:D解析:WebService三大核心:SOAP(传输协议)、WSDL(服务描述)、UDDI(服务注册发现);REST是另一套接口架构风格,不属于传统WebService核心技术。4.答案:A解析:SOAP默认基于HTTP80端口,HTTPS下默认443端口。5.答案:B解析:WSDL是服务描述文档,用于对外暴露接口地址、方法名、参数类型、返回值类型,供客户端生成调用代码。6.答案:A解析:@WebService、@WebMethod是JDK原生WebService专属注解;BCD均为SpringMVCREST接口注解。7.答案:D解析:Fault节点是SOAP的异常节点,用于返回接口调用异常信息,正常数据存放在Body普通节点中。8.答案:B解析:CXF是Apache开源的WebService框架,简化开发、支持丰富的功能,是企业级开发主流框架。9.答案:C解析:WebService基于标准化XML格式,自带数据校验、支持权限加密、事务一致性,适合银行、政务等严谨的异构系统对接;REST更轻量、速度更快、开发更简单。10.答案:A解析:SoapUI是WebService专用测试工具,Postman也支持SOAP接口测试;Navicat是数据库工具,IDEA是开发工具,Maven是构建工具。二、填空题答案及解析1.SOAP、WSDL、UDDI2.简单对象访问协议、XML3.JAX-WS(JDK1.6及以上内置JAX-WS规范实现,支持原生WebService开发)4.operation、message5.XML、HTTP(基于通用网络协议和标准化标记语言,实现跨语言跨平台通信)三、简答题详细答案1.SOAP和REST核心区别及适用场景(1)核心区别:①协议格式:SOAP是标准化协议,强制使用XML封装数据,格式严格;REST是架构风格,无强制协议,常用JSON/XML,格式灵活。②传输方式:SOAP基于HTTPPOST为主,封装完整SOAP报文;REST支持HTTP全部请求方式(GET/POST/PUT/DELETE)。③安全性:SOAP支持WS-Security安全规范,可实现加密、签名、防篡改,安全性高;REST仅能依靠HTTPS、Token等基础方式加密,安全性较弱。④性能:SOAP报文冗余量大、解析繁琐,性能较差;REST数据轻量化,传输和解析速度更快。(2)适用场景:SOAP:银行、政务、金融、企业异构老旧系统对接,对数据安全性、完整性、规范性要求极高的场景。REST:互联网项目、前后端分离项目、移动端接口、对响应速度要求高、交互简单的场景。2.WSDL核心组成及作用WSDL是XML格式的服务描述文件,核心包含6大模块:①definitions:根节点,定义服务命名空间、整体声明信息。②types:定义接口用到的数据类型、参数实体结构,用于数据校验。③message:定义请求、响应的消息体结构,包含参数名称和数据类型。④portType:核心接口模块,定义对外暴露的方法名称、对应的请求和响应消息。⑤binding:定义接口的传输协议(HTTP/SOAP)、报文格式绑定规则。⑥service:定义服务访问地址、端口,是客户端调用的最终入口。3.JDK原生vsCXF框架优缺点(1)JDK原生JAX-WS:优点:无需引入第三方依赖、轻量、部署简单、入门容易,适合简单接口开发。缺点:功能简陋,不支持高级特性(安全加密、负载均衡、拦截器),并发性能一般,不适合复杂企业级场景。(2)CXF框架:优点:功能强大,支持安全认证、拦截器、日志、事务、高并发,兼容各类WebService规范,适配企业级复杂对接场景,支持与Spring整合。缺点:需要引入第三方依赖,配置相对繁琐,项目体积更大。四、代码实操题完整答案1.服务端代码(JDK原生JAX-WS)java

importjavax.jws.WebMethod;

importjavax.jws.WebService;

/**

*WebService登录服务接口

*/

@WebService(serviceName="LoginWebService")

publicclassLoginWebService{

/**

*登录校验接口

*@paramusername用户名

*@parampassword密码

*@return结果数组:[是否成功,提示信息]

*/

@WebMethod

publicString[]loginCheck(Stringusername,Stringpassword){

String[]result=newString[2];

//模拟登录校验逻辑

if("admin".equals(username)&&"123456".equals(password)){

result[0]="true";

result[1]="登录成功";

}else{

result[0]="false";

result[1]="用户名或密码错误";

}

returnresult;

}

//发布WebService服务

publicstaticvoidmain(String[]args){

//发布服务,访问地址:http://localhost:8080/LoginWebService?wsdl

javax.xml.ws.Endpoint.publish("http://localhost:8080/LoginWebService",newLoginWebService());

System.out.println("WebService服务发布成功,WSDL地址:http://localhost:8080/LoginWebService?wsdl");

}

}2.客户端调用代码java

importspace.QName;

importjavax.xml.ws.Service;

import.URL;

/**

*WebService客户端调用工具类

*/

publicclassLoginWebServiceClient{

publicstaticvoidmain(String[]args){

try{

//1.定义WSDL服务地址

URLwsdlUrl=newURL("http://localhost:8080/LoginWebService?wsdl");

//2.定义命名空间和服务名称(对应服务端@WebService的serviceName)

QNameqName=newQName("/","LoginWebService");

//3.创建服务实例

Serviceservice=Service.create(wsdlUrl,qName);

//4.获取服务代理类,调用接口方法

LoginWebServiceservicePort=service.getPort(LoginWebService.class);

//5.调用登录接口

String[]result=servicePort.loginCheck("admin","123456");

//6.打印结果

System.out.println("登录结果:"+(Boolean.parseBoolean(result[0])?"成功":"失败"));

System.out.println("提示信息:"+result[1]);

}catch(Exceptione){

e.printStackTrace();

System

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论