目录
1。导言
2。入门
3。设置Eclipse
4。Http客户端
1。简介
本文是一个由三部分组成的系列文章的第一部分,它将向您展示如何使用(只读)雇员中心(EC)OData服务,并支持Olingo库、OData4j库或http客户端。我们将演示如何使用这些库使用常见的OData特性,例如$filter、$select、$expand。
OData是OASIS标准,它支持创建和使用restfulapi。有关OData的更多信息,请访问:。
对于沙盒系统,我们将使用salesdemo4,这是SAP公司Successfactors人力资源云产品的OData服务,其中包含一套适用于您最苛刻的人力资源流程的应用程序。
让我们了解如何通过使用名字的简单查询来实现这一点,姓氏、出生日期和出生国。要完成此示例,在执行查询之前必须执行某些步骤。第2节和第3节对此进行了描述。
在这个由三部分组成的系列文章中,云服务器服务商,我们将介绍如何使用Java中的Employee Central OData API。第一部分介绍HTTP客户机的一般信息和用法,第二部分介绍OData4j库,第三部分介绍Olingo库。
本文档包括一些源代码片段,向您展示如何创建基本查询。您可以在以下位置查看完整的源代码:?rid=/library/uuid/a0b41a7b-8ddc-3210-5e81-f9c9cddc9ec1
在开始使用Java之前,确保您的odataapi可以被REST客户机使用。您可以使用谷歌Chrome中的"高级REST客户端"工具
有关详细信息,大数据,请参阅:
2. 入门
此输出模板显示了一个查询示例。在personIdExternal字段中,您可以在employee Central中指定员工的外部ID。接下来,快云服务器,选择要使用的库。您可以选择Http客户机、OData4j或Olingo作为查询库。这个例子展示了Olingo。点击"开始!"按钮以获取下面两个模板的结果。这个例子用personIdExternal"cgrant1"显示用户的个人和个人信息。
这个模板显示了这个例子的OData层次结构。有关EC OData API结构的更多信息,请访问:\u api/并参考"员工中心-实体关系"部分
基本身份验证
要模拟用户界面登录,服务器需要用户名、公司和密码等信息。您需要用以下格式对这三个进行编码:@:使用Base64.
例如根@ACE:secret results in cm9vdEBBQ0U6c2VjcmV0.
Simple OData call
此示例显示Google Chrome Advanced Rest客户端中的一个简单OData调用及其结果。
此调用将personIdExternal过滤为"cgrant1"并选择字段"firstName"和"lastName"。
下面的代码片段以JSON格式显示结果。
OData特性
下面的示例将说明如何使用Java中的OData。这些例子展示了如何使用OData特性,比如expand,筛选并选择以指定您的查询。
3.设置日蚀
https://eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/keplerr
https://bintray.com/odata4j/odata4j/odata4j-archive/0.7/view
-Dhttps.proxyHost=代理-Dhttps.proxyPort=8080
-Dhttp.proxyHost=代理-Dhttp.proxyPort=8080
-Dhttp.nonproxy主机="localhost | 127.0.0.1〃
这些参数仅适用于SAP网络上的用户。
现在您应该能够构建并执行程序了!!
4. HTTP客户机
HTTP客户机可能是简单ODataAPI查询的最简单方法。步骤如下:
1。定义连接
2。打电话
3。分析响应xml文件并将其解析为输出
HTTP客户端不使用元数据结构。这有几个后果。如果您只想查询少量数据,那么它比其他两种可能的方法要快,因为您不必先下载元数据。
另一个问题是,您必须知道创建要查询的URL的确切XML结构。因此,它非常复杂,因为XML结构与OData结构不等价。
此代码段显示如何定义与服务器的连接。
此代码段显示如何基于准备好的连接发送调用。响应是XML格式的,因此可以使用其节点在其结构中导航以获取所需的信息。如果输入了一个不存在的personIdExternal,这个方法会抛出一个异常。
我希望这篇博文能帮助您理解如何使用Java来使用OData的第一步。
我对您对这个功能的反馈很感兴趣!
向Jonas致意
嗨,
谢谢你的指导,实时数据采集系统,但请下次不要使用图片并插入代码
欢迎使用Schristoph Scheibe
,大数据问题