Spring-WS, REST, SOAP, HTTP, JMS



我刚刚开始我的web服务之旅,现在我有很多问题。有很多事情我不清楚,所以澄清一下会很有帮助。

  1. 为什么在创建Spring 3时不使用@Endpoint注释REST应用程序
  2. Spring REST web服务是否也创建.wsdl
  3. SOAP和REST之间的区别是什么
  4. 如何使用SOAP web发送请求和接收响应服务
  5. 如何使用RESTWeb发送请求和接收响应服务
  6. 是否可以将JMS与Spring一起使用来公开REST或SOAP web服务

一个问题太多。。。问题,但这里有一些概述:

为什么在创建Spring 3 REST应用程序时不使用@Endpoint注释?

对于REST,您可以使用外部JAX-RS框架或SpringMVC。Spring中的REST端点基本上是控制器,这就是它们的注释方式。@Endpoint是在spring-ws模块中引入的,它们并没有真正的关联。

Spring REST web服务是否也创建.wsdl?

不,传统上WSDL只用于描述SOAP web服务。RESTWeb服务有wadl,Spring还没有自动生成它。

SOAP和REST之间的区别是什么?

非常宽泛的问题。原则上,SOAP使用定义良好的XML消息,通常通过HTTPPOST。REST本质上连接到HTTP谓词,如GET、POST、PUT、内容协商、HAEOS。。。它与HTTP协议的关系更密切,也更灵活。

如何使用SOAP web服务发送请求和接收响应?

任何能够通过HTTPPOST发送XML的客户端都可以与SOAP服务进行交互。通常,您将基于WSDL创建Java客户端(使用REST并不是那么简单)。

如何使用REST web服务发送请求和接收响应?

与上面的方法相同,但通常可以使用不同的内容类型,如JSON。此外,您必须使用不同的HTTP方法来运行不同的功能。

是否可以将JMS与Spring一起使用来公开REST或SOAP web服务?

不确定你想要实现什么。。。从技术上讲,您可以使用JMS作为SOAP的传输层(而不是REST),但这对于一开始来说太高级了。

最新更新