繁体   English   中英

将webservices与javax.ws或javax.jws一起使用

[英]Using webservices with javax.ws or javax.jws

我开始选择一种创建web服务的方法,所以我发现了两种方法:

1)使用包javax.jws,注释@WebService:

 @WebService(...)
public class MyServiceImpl {

2)另一种方法是使用带注释@Path的javax.ws:

@Path("/MyService")
public class MyServiceImpl

据我所知,使用第二种解决方案更简单,因为当我需要创建客户端时,我只需要进行HTTP调用(GET / POST)。 使用第一个解决方案,我需要创建一个WSDL客户端,更复杂的解决方案。

所以,我想知道使用FIRST SOLUTION的优势是什么。

当必须建立正式契约来描述Web服务提供的接口时, SOAP / WSDL样式很有用.Web服务描述语言(WSDL)描述了Web服务的消息,操作,绑定和位置等详细信息。

当应用程序体系结构需要处理异步处理和调用时,SOAP / WSDL样式也很有用(例如,使用JAX-WS可以创建异步客户端)。

SOAP / WSDL样式的缺点是

它的复杂性:在带宽上创建一个更重的客户端需要工具:SOAP需要一个繁重的XML包装器,每个请求或响应复杂的安全规则

REST风格的优点是

简单性:可以从任何浏览器访问REST客户端(但是,这仅适用于GET方法。数据创建请求也需要XML包装器)。 带宽较轻:线上的数据通常是裸xml元素(未包含在<Envelope><Body>标记内)。 可以使用http标准设置REST应用程序安全规则:管理员(或防火墙)可以通过分析请求中使用的HTTP命令来识别每条消息的意图。 例如,GET请求始终可以被认为是安全的,因为根据定义,它不能修改任何数据。

REST风格的缺点是它仍然不能满足所有业务需求

正式REST服务描述尚未接受通用标准REST请求(尤其是GET方法)不适合大量数据REST不包括所有Web服务标准,如事务,安全性,寻址,信任,协调,

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM