SOAP WS 支持远程过程调用(即 RPC)和面向消息的中间件 (MOM) 集成样式。Restful Web Service 仅支持 RPC 集成样式。
SOAP WS 是传输协议中立的。支持多种协议,如 HTTP(S)、消息传递、TCP、UDP SMTP 等。REST 是特定于传输协议的。仅支持 HTTP 或 HTTPS 协议。
SOAP WS 只允许 XML 数据格式。您定义操作,这些操作通过 POST 建立隧道。重点是访问命名操作并将应用程序逻辑公开为服务。REST 允许多种数据格式,如 XML、JSON 数据、文本、HTML 等。可以使用任何浏览器,因为 REST 方法使用标准的 GET、PUT、POST 和 DELETE Web 操作。重点是访问命名资源并将数据公开为服务。REST 支持 AJAX。它可以使用 XMLHttpRequest 对象。适用于无状态 CRUD(创建、读取、更新和删除)操作。获取 - 代表() 发布 - 接受代表() 放置 - 商店代表() 删除 - 删除代表()
无法缓存基于 SOAP 的读取。可以缓存基于 REST 的读取。更好地执行和扩展。SOAP WS 支持 SSL 安全性和 WS-security,它添加了一些企业安全功能,例如在需要的地方维护安全性,通过中介维护身份,而不仅仅是点对点 SSL,使用不同的安全算法等。REST 仅支持点对点 SSL 安全性。SSL 对整个消息进行加密,无论所有消息是否敏感。SOAP 全面支持针对短期事务的基于 ACID 的事务管理和针对长期运行事务的基于补偿的事务管理。它还支持跨分布式资源的两阶段提交。REST 支持事务,
SOAP 具有内置的成功或重试逻辑,即使通过 SOAP 中介也能提供端到端的可靠性。REST 没有标准的消息传递系统,并且期望调用服务的客户端通过重试来处理通信失败。
来源 http://java-success.blogspot.in/2012/02/java-web-services-interview-questions.html