云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

香港服务器_中山网站建设服务_折扣

小七 141 0

香港服务器_中山网站建设服务_折扣

对于类型的下一个实例Edm.博客…我考虑过选择ComplexType…虽然我们的博客将是一个相当简单的类型…。与往常一样

本博客是我们为初学者提供的一系列博客的一部分,这些初学者使用SAP云平台SDK进行服务开发(请参阅此处了解信息)

请参阅此处了解先决条件。

在本博客中,我们将了解如果我们的模型包含类型为"complexType"的属性,那么实现是什么样子的

什么是复杂类型?

由于我有限的英语词汇,我只能给出一个简单的解释:

在我的数据模型中,我有一个普通的实体类型,它由几个属性组成。这很正常。E、 我的人有一个财产,这是人的名字。这是一个普通属性,它有一个普通的简单数据类型,它只是一个字符串

现在我对我的数据模型有一个要求:我想存储个人的地址。没问题。我可以简单地继续向Person实体类型添加更多常规属性:添加另一个名为String类型的City属性添加另一个名为String类型的Street属性添加另一个名为StreetNumber的int类型属性Etc

但是最好将这些新的财产分组,因为它们一起构成了这个人的地址。这种分组是通过所谓的复杂类型来实现的在OData中,我们可以定义一个ComplexType并称之为"Address"然后我们将属性添加到ComplexType(City、Street、Number等)

最后,在实体类型中,快速自助建站,我们创建了一个名为"HomeAddress"的属性,而不是Edm.字符串它的类型是"Address",这是前面定义的复杂类型。

这看起来好多了-你不同意吗?

这些简单的解释有帮助吗?更专业的解释是:规范可以在这里找到

如何创建一个项目?请看这里。

在这个博客中,我们终于增强了我们的模型。

我们创建了一个复杂的类型,如上图所示。然后我们在现有的实体类型"Person"中使用它。如上图所示。限定名称必须正确。因此,请确保从定义名称空间的地方复制名称空间。

名称空间被定义为模式的属性:

不再更改(目前)

我们的增强模型如下:

复杂类型本身是如何在java代码中实现的?

是的,因为它是结构化类型,所以它实现为一个映射,就像实体类型一样。是的,实体类型是一个映射,这个映射有一个条目,虚拟主机,它的值是一个(嵌套的)映射?

以下结构视图有帮助吗?

还是你更喜欢这样看:绿色的外部地图代表人物(实体类型),黑色的内部地图代表地址(复杂类型)

好的。

现在让我们把这个结构化视图翻译成Java:

首先我们创建复杂类型地图。这是内部的地图,稍后会用到。

然后我们为"Person"创建一个有"Address"的地图,即使用上面创建的地图的外部地图。

您可以看到createPerson方法是如何改变的,手机免费建站,与以前的博客相比:

属性"HomeAddress"的值是一个映射:

而不是一个简单的字符串。

使用复杂类型创建

我们已经学习了如何实现创建操作。

关于复杂类型的一点注意:

在执行POST请求时,用户必须使用嵌套结构发送负载,因为复杂类型。因此,在云上,在我们的实现中,我们得到了一个嵌套结构:一个映射(对于person)和一个嵌套映射(对于address)。因此,我们可以像往常一样访问外部映射,对于复杂类型,我们可以从外部映射的值得到嵌套映射。

请参阅本博客末尾的完整Java类。一如既往。

一如既往,现在我们可以与maven一起重建,使用Cloud Foundry客户端部署,用浏览器运行

查询复杂类型

首先,我们想看看复杂类型,所以我们调用查询操作。

https://。cfapps.sap.hana文件.ondemand.com/odata/v4/DemoService/People

使用复杂类型的系统查询选项进行查询

这些URL显示如何使用$select进行复杂类型:

您可以将复杂类型本身传递给$select

https:///odata/v4/DemoService/People?$select=HomeAddress

结果显示包含所有属性的完整复杂类型。

更有趣的是只选择复杂类型中的一个属性。语法是使用斜杠:

https:///odata/v4/DemoService/People?$select=HomeAddress/City

因此,只显示城市,其他不显示

下面的URL显示如何将普通属性与嵌套属性结合起来

https:///odata/v4/DemoService/People?$select=Name,HomeAddress/City

这里有一个额外的框,以便您更好地记住$select with和

CREATE with Complex Type

为了发送一个有效的POST请求,大数据治理平台,请求负载应该是这样的

这已经是一个小博客的结尾了。这个博客是关于使用和实现复杂类型的

博客系列和链接集概述。