参见文档:http://wenku.baidu.com/link?url=Td_jy9qpvew-U92NRfnIGinfcjUO2PDWFISQi4WOMwfQdr3c5L2zxkhQJm0giVcq-IAxr3Qg-8w53CpLdfM08DMBagl1ed8w6yJxJX-bd6C Restful web service:Rest是针对Web提出的一种架构风格,Restful web service本质上就是Web,任意一个URL地址,一个HTTP网页都可以称作是Restful web service。Rest把网络上的所有事物抽象为资源,把对资源的操作抽象为CRUD,对应HTTP的put,get,Post,delete。注意此处的资源不是静态的数据,而是数据加上状态,是随时间变化的,每个资源有一个唯一的标识,URL。 Rest提出了一些设计概念和准则: 1、网络上的所有事物都被抽象为资源(resource); 2、每个资源有一个唯一的资源标识(resource identifier); 3、通过通用的连接器接口(generic connector interface)对资源进行操作; 4、对资源的各种操作不会改变资源标识; 5、所有的操作都是无状态的(stateless)。 soap与Rest区别: 1、soap也可以看作是一种风格,面对的应用需求是RPC,而Rest面对的应用需求是分布式超媒体系统(Web)。 2、Rest架构风格更强调数据,请求和响应消息都是数据的封装。而soap风格更强调接口,soap消息封装的是过程调用。Rest是面向资源的,而soap是面向接口的。 3、Rest架构下,HTTP是承载协议,也是应用协议,而soap架构下,HTTP只是承载协议,soap才是应用协议。 soap与Rest的应用场合 1、过程调用用soap。若服务是作为一种功能提供,客户端调用服务是为了执行一个功能,用soap,比如常见的认证授权。而数据服务用Rest。 2、可以定义清晰明了的正式接口的情况下,用soap,比如在企业应用中,系统间的耦合采用面向接口的方式。 3、要更多的考虑非功能需求,比如安全、传输、协作等需求,使用soap。 4、低带宽,客户端的处理能力受限的场合,比如在PDA,手机上消费服务,用Rest。
|
|
来自: 爱学习_守之 > 《Java Web》