REST基础及实例开发课件.pptx
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《REST基础及实例开发课件.pptx》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- REST 基础 实例 开发 课件
- 资源描述:
-
1、REST基础及实例开发REST基础及实例开发黄晓娜2011-11-22REST基础及实例开发REST基础uREST概念uREST设计原则u资源的识别 Restful Web服务的java框架实例开发(转账业务)u环境准备u 服务端开发u服务部署u 客户端访问u 补充(动态创建URI及REST常用注释) 理解出错处 REST基础及实例开发 REST (Representation State Transfer:表述性状态转移) 描述了一个架构样式的网络系统,比如 web 应用程序。 REST从资源的角度来描述整个网络,分布在各处的资源由URI确定,而客户端的应用通过URI来获取资源的表征。获得这
2、些特征致使这些应用程序转变了其状态。随着不断获取资源的表征,客户端应用不断地在转变这其状态,也即所谓的表述状态转移。 REST是设计风格。它通常基于使用HTTP,URI,和XML以及HTML这些现有的协议和标准。 REST指的是一组架构约束条件和原则。满足这些约束条件和原则的应用程序或设计就是RESTful。注意:REST中的资源指的不是数据,而是数据和表现形式的组合,比如“访问次数”和“下载次数”在数据上可能有重叠或者完全相同,而由于他们的表现形式不同,所以被归为不同的资源REST基础及实例开发REST基础uREST概念uREST设计原则u资源的识别 Restful Web服务的java框架
3、实例开发(转账业务)u环境准备u 服务端开发u服务部署u 客户端访问u 补充(动态创建URI及REST常用注释)理解出错处 REST基础及实例开发 网络上的所有事物都被抽象为资源-应用程序对象、数据库记录、算法等。 每个资源对应一个唯一的资源标识符(URI)。 通过通用的连接器接口(GET,PUT,POST,DELETE)对资源进行操作。 对资源的各种操作不会改变资源标识符。 所有操作都是无状态的。每个HTTP请求都是孤立的,每个请求都必须包含自己的参数来完成操作。如果服务器在请求之间的任何时间点重启,客户端不会得到通知。此外,无状态请求可以由任何可用服务器回答,这十分适合云计算之类的环境。客
4、户端可以缓存数据以改进性能。 分层系统:组件无法了解它与之交互的中间层以外的组件。通过将系统知识限制在单个层,可以限制整个系统的复杂性,促进了底层的独立性。REST 设计原则包括客户-服务器、无状态、缓存、统一接口、分层系统等。REST 原则的无状态指服务器端不保存客户应用状态,连接请求响应断开,客户的上一次请求与下一个请求没有关系。服务器端响应客户请求返回资源的表述及相关链接,该表述的本身就是客户的当前状态,客户按照表述中提供的链接选择下一个表述,迁移到下一个状态。也就是服务器通过表述为状态迁移提供指导,而状态的迁移权掌控在用户手里,客户根据自己的需要选择链接,由当前状态迁移到下一个状态。R
5、EST基础及实例开发 HTTP请求方法在RESTful web中的应用资源资源GETPUTPOSTDELETE一组资源的URI,比如http:/ URI,以及该资源组中每个资源的详细信息(后者可选)可缓存,幂等使用给定的一组资源替换替换当前整组资源。在本组资源中创建创建/追加追加一个新的资源。 该操作往往返回新资源的URI。不缓存,不幂等删除删除 整组资源。单个资源的URI,比如http:/ 指定的资源的详细信息,格式可以自选一个合适的网络媒体类型(比如:XML、JSON等)替换替换/创建创建 指定的资源。并将其追加到相应的资源组中。只有在客户端能够决定资源的URI时才能使用把指定的资源当做一
6、个资源组,并在其下创建创建/追加追加一个新的元素,使其隶属于当前资源。删除删除 指定的元素。REST基础及实例开发REST基础uREST概念uREST设计原则u资源的识别 Restful Web服务的java框架实例开发(转账业务)u环境准备u 服务端开发u服务部署u 客户端访问u 补充(动态创建URI及REST常用注释)理解出错处 REST基础及实例开发 分析用例,找到可以“创建”、“读取”、“更新”或“删除”动作来操作的领域名词,每个领域名词都可标识为资源。使用POST,GET,DELETE,PUT对其进行操作。 某些情况下,例如:生成随机数;为客户端提供一个方法,在一个请求中,获取最小属
7、性集的用户档案;列出最近10张用户上传的照片;将钱从一个银行账户转到另一个银行账户(转账)等。可以识别出名词但是如果将这些名词设别为资源,会发现相应的动作没有办法映射到HTTP方法上。这是需要额外的资源来处理这些用例。REST基础及实例开发REST基础uREST概念uREST设计原则u资源的识别 Restful Web服务的java框架实例开发(转账业务)u环境准备u 服务端开发u服务部署u 客户端访问u 补充(动态创建URI及REST常用注释)理解出错处 REST基础及实例开发 Restlet:由erome Louvel 和 Dave Pawson 开发,它实现针对各种 RESTful 系统
8、的资源、表示、连接器和媒体类型之类的概念,包括 Web 服务。在 Restlet 框架中,客户端和服务器都是组件。组件通过连接器互相通信。 JSR-311是 Sun Microsystems 的规范,可以为开发 RESTful Web 服务定义一组 Java API。Jersey是对 JSR-311 的参考实现。 uJSR-311 提供一组注释,相关类和接口都可以用来将 Java 对象作为 Web 资源展示。该规范假定 HTTP 是底层网络协议。它使用注释提供 URI 和相应资源类之间的清晰映射,以及 HTTP 方法与 Java 对象方法之间的映射。API 支持广泛的 HTTP 实体内容类型,
9、包括 HTML、XML、JSON、GIF、JPG 等。它还将提供所需的插件功能,以允许使用标准方法通过应用程序添加其他类型。 REST基础及实例开发REST基础uREST概念uREST设计原则u资源的识别 Restful Web服务的java框架实例开发(转账业务)u环境准备u 服务端开发u服务部署u 客户端访问u 补充(动态创建URI)理解出错处 REST基础及实例开发 安装JDK,Tomcat并配置变量。 安装Eclipse或MyEclipse 在Jersey官网上下载所需的jar包 Jersey框架所依赖的包客户端解析JSON所需的包REST基础及实例开发REST基础uREST概念uRE
10、ST设计原则u资源的识别 Restful Web服务的java框架实例开发(转账业务)u环境准备u 服务端开发u服务部署u 客户端访问u 补充(动态创建URI及REST常用注释)理解出错处 REST基础及实例开发 在Myeclipse开发环境中创建一个Java Web工程。添加jar包到web工程的类路径 u 直接添加,把jar包copy到WebRoot/WEB-INF/libu 在工程的根目录下创建lib文件夹,copy jar包到lib, 配置Build-path REST基础及实例开发 REST基础及实例开发 OKOKREST基础及实例开发转账业务应用场景:当用户输入贷款账户(LoanA
展开阅读全文