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

企业网站_华为云收费_怎么买

小七 141 0

分布式存储_添加数据库_高性价比

这是一系列博客文章中的最后一篇,介绍了一个简单的web前端工具,用于探索用户上传文档的SAP HANA文本分析功能。作为提醒,以下概述概述了本系列中的所有文章:

第1部分-概述:对最终用户上传的文档进行SAP HANA文本分析第2部分-实践:为SAP HANA文本分析应用程序构建后端第3部分-演示:用于上载文档和探索SAP HANA文本分析功能的UI5前端第4部分-深入探讨:如何在UI5应用程序中使用OData上载文档

在上一篇文章中,淘客采集,我们介绍了示例应用程序,解释了它的功能,并通过指向github存储库和安装说明得出结论,以便您可以在自己的HANA系统上运行应用程序。

在本文中,我们将详细解释上传功能是如何从UI5方面工作的

将文件和二进制数据上传到HANA.xsodata服务uingui5

在本系列的第一期文章中,我们讨论了将(binday)文档内容加载到saphana数据库的主题。我们选择使用OData服务。在本期文章中,我们将非常详细地介绍如何使用UI5前端框架实现由HANA.xsodata服务支持的文件上载功能。

在讨论UI5应用程序实现的任何特定细节之前,必须指出此特定应用程序是demoware。这里省略了UI5应用程序开发的许多典型模式:没有国际化,也没有模块或依赖项注入sap.ui.define(). 甚至没有MVC架构,因此没有XML视图或控制器;没有组件配置,也没有应用程序描述符(清单.json).

相反,应用程序只包含一个索引.html,其中包含2个标记:

第一个引导ui5,第二个加载ui5索引.js,其中包含实现这种相当简朴的方法的主要原因是,我和我的同事Arjen和Mitchell的主要目标是快速开发一个功能原型,演示文件上传功能。虽然我已经习惯了一个更OrhtodoxUI5的样板文件,但当我谈到快速演示上传特性时,我会分心。一旦我们建立了上传功能,我想看看它是多么容易扩充,使它成为一个有用的应用程序,我有点感兴趣的经验,它将是如何继续使用这种非正统的,纯javascript的方法。所以现在:如果你是UI5的新手并且想了解更多:不要拿这个应用程序为例,它是非典型的。如果你是一个经验丰富的UI5开发人员:现在你有了背景知识,让我们继续讨论其本质。

在我们开始讨论构建和控制上传功能的主题之前,应该说几句关于UI5应用程序如何与其(xsodata)后端通信的话。

在UI5中,返利机器人怎么做,我们不必担心直接进行后端调用的具体细节。相反,UI5提供了一个对象,什么是淘客,该对象提供了处理这个问题的javascript方法。这个对象就是模型。在我们的应用程序中,该模型是sap.ui.model模型.odata.v2.ODataModel,我们在索引.js:

不必详细讨论模型实例化——现在,只要知道实例化后,模型就会被传递给我们已经构建的.xsodata服务的uri就足够了。我们通过获取当前网页的url并构建服务路径,在模型实例化之前的代码中获得url/塔克索达塔相对于该位置:

从功能的角度来看,web应用程序(客户端)有两个不同的任务需要考虑:

构建用户界面,以便用户可以选择要上载的文件。将文件内容加载到数据库中。

第一个高级任务严格来说是用户交互的问题,或多或少与第二个高级任务的实现方式无关。对于第二个高级任务,我们已经准备好了后端——这是我们在blogpost系列的第二部分中构建的OData服务。剩下的是如何在UI5中实现这一点。

但我们已经可以将此任务分解为两个子任务:

从所选文件中提取内容。一旦用户选择了一个文件,他们只确定了他们想要上传的东西。web应用不需要解析或理解文件内容,但它需要提取数据(文件内容),以便将其发送到服务器。向后端发送正确的请求。请求将以某种方式包含从文件中提取的内容,并且它的格式将使服务器了解如何处理这些内容—在这种情况下,将其存储在a表中进行文本分析。

对于文件上载用户interface,我们决定sap.ui.unified.FileUploader控件。以下是来自索引.js实例化控件:

thesap.ui.unified.FileUploader控件作为输入字段和打开文件选择器的按钮提供给用户。这允许用户浏览并从他们的客户端设备中选择一个文件sap.ui.unified.FileUploader控件提供事件、配置选项和方法,以验证用户的选择,并将文件发送到服务器。例如,您可以设置uploadUrl属性来指定将文件发送到的位置,并且有一个upload()方法让控件执行请求。

事实证明,大多数添加的功能对于手头的任务并不是很有用,因为我们需要发出的请求非常具体,我们并没有找到一个明确的方法来配置控件以发送正确的请求。也许这是可能的,然后我们将不得不学习如何。