学习Web Service时,不免会经常遇到REST这个术语。他的含义是:Representational State Transfer(表述性状态转移)。其实,简而言之,REST就是一种解决方案,一种思想。其主要目的在于,提高系统的可伸缩性和降低系统开发的复杂度,同时简化基于Web Service服务的架构开发。
在REST中一个很重要的概念是:资源!然而在WEB中一个资源的含义,并非指“一本书”,“一张纸”这样的具体数据。这里的“资源”,等于“数据+表述”。什么意思?比如说:“家里有6个孩子”和"比我大的有4个孩子"。这两句话中的数据有重叠的部分(我家里比我大的孩子),但是他们的表述是不同的。这就可以看出这里的资源,是数据和表述的结合体。
REST之所以可以简化开发工作,是因为他规定了一些约束:
@ 网络上的所有事物都被抽象为资源(Resource);
@ 每个资源都要有一个唯一的标识符(Resource Identifier)。(URI)
@ 只可以通过通用的连接器接口(Generic Connector Interface)对资源进行操作。(HTTP)
@ 对资源的各种操作不会改变资源的标识符。
@ 所有的操作都是无状态的。
使用REST应该注意的问题:
# REST的无状态性,虽然提高了系统的可伸缩性,但增加了客户端和服务器端的通信量,可以采用客户端缓存机制来提供通信的效率,但这样做,可能会带来客户端和服务器端的一致性和安全性等问题。
# REST关键所在:怎样抽象资源?
# REST中服务器端只提供Resource,客户端需要根据服务器端返回的Data和Representation,自己解决解析和显示的问题。
REST可使用的一些框架(遵循JAX-RS标准):
Jersey,CXF,RESTEasy,Restlet
分享到:
相关推荐
机器视觉是一种技术,它使计算机和自动化设备能够“看”并理解现实世界,进而执行基于图像的任务。在本文中,我们将深入探讨机器视觉的基本概念、组成部分、应用领域以及其在现代科技中的重要性。...
### 何为HDMI?步入数字化需要知晓的点滴 #### HDMI概述 HDMI(High Definition Multimedia Interface,高清晰多媒体接口)是一种专为音频和视频信号传输设计的接口技术,被视为下一代音视频主流接口。它能够在...
1、何为抽象?抽象的意义是什么?试列举出计算机系统的抽象表现为哪些? SA思考题3 1、阅读软件架构师应该知道的97件事,选择3件印象最深的并写出感想。 SA思考题4 1、阅读材料“Software Architecture 4+1”,试给...
高中历史之历史百科刘向荣:何为启蒙? 在这篇文章中,我们可以看到,刘向荣先生对启蒙的定义和解释。他认为,启蒙实质上就是理性精神的弘扬。这一点,我们可以通过康德的观点来加以理解。康德认为,启蒙就是人类对...
《水浒传》是中国古典文学中的四大名著之一,作者施耐庵以其独特笔法描绘了一群豪杰聚义梁山的壮丽画卷,提出了何为英雄、英雄为何的深刻主题。通过对书中英雄人物的剖析,我们可以看到英雄的三个主要特质:兄弟义气...
网络存储技术的发展旨在满足日益增长的数据存储和访问需求,尤其是随着互联网和企业信息化的快速发展。在探讨主流的网络存储类型之前,我们先要理解RAID(Redundant Array of Independent Disks,独立磁盘冗余阵列)...
在IT行业中,我们经常面临各种复杂的问题和挑战,而寻找捷径成为了许多从业者追求的目标。然而,正如数学老师、船夫和哲人的观点所揭示的,捷径并不总是直截了当的,它可能需要适应环境,需要持续的努力,而非单纯的...
何为机器视觉?机器视觉入门.pdf
本篇行业报告深入探讨了欧洲电动车销量增长的情况,并对其增长的可持续性进行了分析。报告首先指出,自2019年第四季度起,欧洲电动车市场进入加速放量阶段,销量显著增长,现阶段的销量增长仍主要受政策推动,但其...
软件体系结构是软件开发的核心,它定义了软件系统的高层次组织结构和交互方式。这个概念的引入是为了应对软件危机,即由于复杂性增加、成本上升和交付时间紧迫导致的诸多问题。通过对软件体系结构的研究,我们可以更...
【Facebook手机意欲何为?】 Facebook作为全球最大的社交媒体网络,拥有庞大的用户基础,其推出手机的意图旨在进一步整合资源,强化自身平台的地位。在移动互联网时代,竞争的核心已不再是单一的产品或服务,而是...
互联网运营是现代数字时代中一个至关重要的职位,它涵盖了多个方面,旨在确保互联网产品能够成功地吸引、留住并持续服务于用户。下面将详细解释互联网运营的各个方面,以帮助理解这一职位的核心概念。...
新闻文体,顾名思义,是指在新闻报道和传播中所采用的一种特定的语言风格和表达方式。它具有明确的目的性和规范性,旨在清晰、准确、及时地传递信息,让读者迅速了解事件的核心内容。在互联网时代,新闻文体的特征与...
英特尔与ARM的授权协议意味着在芯片市场的两大重要玩家之间出现了合作的新局面。英特尔曾长期主导PC市场的处理器芯片领域,但随着传统PC市场的衰退,英特尔开始寻求新的增长点。与此同时,ARM在移动市场和物联网领域...
**MIME协议分析** MIME,全称“Multipurpose Internet Mail Extensions”,中文名为“多用途互联网邮件扩展”,是一种广泛应用于电子邮件系统的规范。该协议的基本内容最初定义于RFC 2045-2049,取代了较早的RFC ...
2.2 何为类?答:类是 Java 中的基本单元,描述了一组对象共有的属性和行为。 2.3 什么是构造方法?答:构造方法是一种特殊的方法,用于对象的初始化,它的名称和类名相同,并且没有返回值。 三、Java 中的多态 ...
### RapidIO概述与关键技术知识点 #### 一、RapidIO技术简介 RapidIO是一种高性能的系统互连标准,主要用于嵌入式处理器、数字信号处理器(DSP)和网络处理器(NPU)之间的通信。该技术由RapidIO贸易协会制定并...
欧洲电动车市场的发展是全球汽车行业的重要关注点,尤其是在环保政策推动和消费者需求变化的双重影响下。本报告将探讨欧洲电动车销量为何超出预期以及这种趋势是否能够持续。 首先,欧洲电动车销量的增长得益于政府...
国有股转让火爆意欲何为? (2003年)
何为器? 勇气也! 锻炼自己的勇气是把话讲好的第一步,讲话的勇气都没有如何沟通? 敢讲话并不能代表能把话讲好! 何为器? 思量也! 简而言之就是过脑子。 一个话很多的人,有两种可能:一种是蠢货,一种运筹帷幄...