SAP OData介绍
来源:互联网 发布:淘宝上情趣用品买家秀 编辑:程序博客网 时间:2024/05/21 07:46
OData介绍
OData是一种非常简单的接口协议,它有着简单的结构以及简单的操作方式。当我们提及接口的方式,目前首推的是RESTful,REST是Representational State Transfer的缩写,它是一种轻量的接口方式(和传统的SOAP的接口方式相比)。注意,REST不是协议,只是开发接口中的术语,这种接口方式有以下一些特点:
无状态交互(Statelessness)
请求不会在服务端存储,任何的请求包含了所有服务所需要的信息。
可缓存(Cacheability)
请求的返回信息可以定义是否需要缓存。
层级系统(Layered System)
客户端不清楚访问的最终系统,有可能是直接连接,也可能是中间系统。
统一接口(Uniform Interface)
统一的接口方式可以将客户端和服务端解耦。
按需编程(Code on demand)
服务可以根据客户端传输的请求内容定制化。
REST请求的通用操作:
GET
客户端从服务端获取数据。
POST
客户端传送信息给服务端进行创建的操作或者修改的操作。
PUT
客户端传送信息给服务端进行创建的操作或者修改的操作。
DELETE
删除服务端的数据操作
PATCH
更新某一条数据中的某个属性。
OData的定义
OData是Open Data Protocol的缩写,是一种基于REST的数据访问方式。目前这种协议有微软进行维护和发布。
详细的OData的介绍请参考:www.odata.org
OData 协议遵循以下五种设计原则
数据多样性存储
在一个服务里面可以定义多种数据的存储。
向下兼容
客户端和服务端可以使用不同版本的OData服务,每个服务都可以向下兼容。
REST原则
遵循上文中提到的REST原则。
容易扩展
如果需要额外的服务,应该能够进行简单的扩展。
简单
实施OData
如果需要实施OData服务,需要完成以下四个部分:
OData模型
定义数据结构,一般发生在后端系统。
OData协议
支持CRUDQ(创建,读取,修改,删除,查询)功能,数据的传输可以使用XML或者JSON。
OData客户端库
保证了客户端能够使用库函数方便的访问OData服务。注意,客户端库并不是必须的,但是尽量有,这样可以节省大量的编码工作。
OData服务
可以最终被客户端访问的服务。
OData服务的结构
- 服务文档(Service Document)
- 服务元结构文档(Service Metadata Document)
以上两种文档包含了:
- 实体(Entity)
- 实体类型(Entity Type)
- 实体集合(Entity Set)
- 属性(Property)
- 导航属性(Navigation Property)
- 关联(Association)
OData的操作
创建
HTTP请求类型: POST
成功返回:201
读取(包括单条读取-read_entity,多条读取read_entityset)
HTTP请求类型:GET
成功返回:200
更新
HTTP请求类型:PUT
成功返回:204
删除
HTTP请求类型:DELETE
成功返回:204
查询
HTTP请求类型:GET/POST
成功返回:200/201
查询操作清单:
OData 在SAP中的方案
SAP对于标准的OData进行了扩展,特别是在对于字段属性定义上,如果熟悉SAP系统的人都知道SAP系统表中的字段定义往往很难理解,SAP的扩展中就包括了使用字段的描述作为OData的属性进行命名。
SAP对于OData的支持扩展包括:
- HTTP返回码可以自定义
- CRUD的支持
- CUD多媒体文件的支持
- 序列化处理
- 深层结构处理
- Merge/patch的支持
- Paging,filter的扩展支持
OData在SAP各种产品中的使用:
- SAP Fiori
- SAP Jam
- SAP Netweaver Portal
- SAP HANA
总结
本文简单的过了一下OData,也大概看了一下SAP中OData的使用,在接下来的一篇文章中会介绍Gateway的基本架构。
- SAP OData介绍
- SAP ui5 table odata
- SAP OData Service
- SAP HANA XS ODATA展示
- SAP HANA XS ODATA简介
- OData入门:OData Java和SAP UI5的几个帖子
- SAP UI5 upload file and oData response
- SAP ODATA官网提供测试内容
- SAP HANA XS ODATA的写法
- SAP HANA ODATA的format参数形式
- SAP HANA的Odata数据前台显示
- OData 语法使用规则介绍
- SAP HANA 5. Using the SAP HANA OData Interface. (helloodata)
- OData
- SAP OData Moduler的定制开发相关资料
- SAP UI5 Demo 绑定Odata数据
- How to bind the odata services to SAP ui5 table
- SAP HANA XS ODATA使用参数展示具体数据
- iOS数据库框架 WCDB的使用详解
- 图片加载之Glide使用总结
- mysql group by limit (根据某一分组,取固定条数) 实现
- UNPv13:#第3章#套接字编程简介
- 为什么爱奇艺等网站在Chrome上可以播放,在Android上的浏览器桌面版播放不了?
- SAP OData介绍
- 俯瞰tcp协议的三次握手
- RabbitMQ在Centos7中安装及使用
- Kotlin入坑(五)类和继承二
- 关于eclipse中js文件没有提示代码的解决
- hbase1.3配置snappy压缩
- project euler 5
- [JZOJ4695]【GDOI2017模拟8.14】佐助的难题
- 【机器学习】Sklearn独热编码one hot 编码preprocessing.OneHotEncoder()使用