当前位置:主页 > 轻量服务器 >

美国服务器_seer数据库_免费

你好!

在TinyWorld应用程序简介中,我们介绍了TinyWorld多部分教程,介绍了如何使用SAP HANA的SAP Web IDE(Web IDE)为SAP HANA和XS Advanced开发应用程序。

现在是时候深入了解一下了,云服务器是什么,并进一步了解与多模块开发相关的概念应用程序

如本教程简介所述,业务应用程序通常由多个模块组成,例如数据库模型、Java或节点.js业务逻辑,部署到不同目标运行时的UI应用程序。

开发此类应用程序需要仔细协调API和依赖关系。部署此类应用程序更具挑战性,因为需要协调和调配不同的部分和目标。

SAP Web IDE支持在所谓的多目标应用程序(MTA)项目中开发、测试和部署整个多模块应用程序。开发过程由一个特殊的元文件管理,我们已经见过这个文件,即MTA描述符(mta.yaml公司).

下图显示了完全展开的TinyWorld项目的结构(有意不显示一些隐藏的"系统文件"):

本地文件夹是所有项目的根文件夹,表示你的"工作区"。每个工作区可以有多个项目。项目只是一个包含多个模块的文件夹结构。这里我们可以看到三个模块:

除了上述结构之外,可能还有额外的、通常隐藏的特殊文件:一个名为.git/(由版本控制系统使用)的文件夹,一个名为.che/(用于记录工作区状态)的文件夹,以及在HDB源文件夹中,分别名为.hdbconfig和.hdbnamespace的两个文件。您通常不需要关心这些文件。

每个项目根文件夹还包含MTA描述符,mta.yaml公司,将在下面详细讨论。

MTA描述符文件由Web IDE自动创建和维护。在本教程第2部分中创建应用程序项目时,创建了一个小框架。最初,它没有太多有趣的内容:

当我们开始向项目添加模块时,MTA描述符文件自动更改。以下是本教程第3部分结尾的内容:

让我们仔细看看。

在XS Advanced中开发交互应用程序模块最复杂的一个方面是一个模块如何知道另一个模块的访问点。

如何编写调用OData服务的UI,当您不知道运行时该服务的URL是什么时,店铺淘客,因为理论上它可以部署在XS高级管理下的任何主机上?或者,如何编写一个必须在HDI容器中运行的数据库模块,该容器稍后可能由HANA管理员在生产数据库上建立?或者,如何指定某个业务逻辑模块只应在其所依赖的数据库模块部署之后才进行部署?

MTA描述符的作用是描述MTA中所有模块之间的逻辑依赖关系。它使用"requires"和相应的"provides"部分中的变量,以及预定义的(保留的)变量(如${defaulturl})来实现这一点。部署应用程序时,将确定并替换此变量的值(我们将在本教程的第9部分详细讨论此主题)。

让我们检查小型应用程序的依赖关系。

在第10行中,您可以看到tinydb模块使用"requires"部分来声明特定的数据库容器代码将部署到其中(第10行)。MTA描述符由开发和部署工具跟踪。例如,当您"构建"tinydb模块时,这些工具将在开发期间和以后的部署期间自动创建和提供必要的数据库容器和相关的XS高级服务、技术用户和权限。

第16行显示tinyjs模块如何依赖tinydb(因此您将无法运行tinyjs,云服务器和服务器,除非您首先构建tinydb)并在其代码访问的HDI容器上(第17行)。

tinyjs模块有一个"provides"部分(第18-21行),其中包含一个变量tinyjs_api,其属性名为service_url,保留值为${default url}。那么这是怎么工作的呢?

看看tinyui的定义。我们已经知道,这个模块将调用tinyjs公开的OData接口,企业管理应用,因此需要知道它的URL。因此,它"需要"变量tinyjs_api.

到tinyjs的URL的实际"绑定"是由XS高级"approuter"应用程序执行的。

此应用程序希望访问名为destinations的环境变量,该变量具有预定义的名值对"分组"结构。我们通过使用局部变量{service\u url}即tinyjs的运行时url的值定义一个属性tinyjs\u be来创建这个分组结构。要关闭循环,同样的属性也必须在approuter的配置文件xs中作为路由列出-应用程序.json,如本教程第3部分所述:

总结:"批准者"将使用此信息进行路由欧元.xsodata由tinyjs_be属性定义的目标URL,该属性自动映射到tinyjs模块的OData服务

是的,一开始看起来有点复杂,但是好处远远大于这个。如前所述,MTA描述符由开发和部署工具跟踪,这些工具在开发期间和以后的部署期间自动创建和提供必要的依赖项和关联的XS高级服务、技术用户和权限。这大大减少了在各种"清单"文件中硬编码绝对值的需要,并为您部署应用程序的每个环境修改这些硬编码值!

CDS工件是在符合特定约定的上下文中创建的。虽然这不是CDS教程,iot物联网,但下表将帮助您在使用webide创建和部署CDS工件时保持一致:

猜你喜欢

微信公众号