您现在的位置是:主页 > 云安全 > 存储 >

服务器_郑州建设局网站_新注册优惠

2021-09-08 18:02存储 人已围观

简介在我用OData学习SAPUI5的过程中,我被模型和数据绑定中的操作困住了。所以现在在成功集成了所有的持久性操作之后,我希望我的经验可以帮助那些有同样问题的人,要在HCP中部署,只...

在我用OData学习SAPUI5的过程中,我被模型和数据绑定中的操作困住了。所以现在在成功集成了所有的持久性操作之后,我希望我的经验可以帮助那些有同样问题的人,要在HCP中部署,只需更改持久性.xml在持久性包中。

在这个示例应用程序中,我将尝试解释如何使用所有基本的持久性操作构建一个端到端的应用程序:创建、读取、,更新和删除。

为了构建这个应用,我使用了以下几层:

所有的源代码都可以在crudsapui5odatajpa/飞行大师·allanfelipesilva/crudsapui5odatajpa·GitHub上找到

更新,版本2:

thePOM.xml文件坚持和持久性.xml文件已准备好构建HCP运行的应用程序。这些文件在git中更新。

要构建应用程序,必须安装ApacheMaven。5分钟后见Maven教程。

要下载源代码,必须克隆存储库。要安装git,请参阅git–入门。

要克隆应用程序,只需在操作系统的命令中运行:git clonehttps://github.com/allanfelipesilva/crudsapui5odatajpa.git

git完成代码下载后,您必须使用ApacheMaven构建它。只需在"flight"文件夹中运行以下命令:

完成后,所有模块都将准备就绪,.war将生成:

flight\flight web\target文件夹中的.war文件将准备就绪,您必须将其上传到HCP试用实例:

如果您要更改源代码,必须在每个模块中创建eclipse项目在app文件夹中,进入命令行并执行以下命令来创建eclipse项目:

在eclipse中有三个不同的项目,每层一个:

在eclipse中导入项目,只需进入菜单导入->更多->工作区中的现有项目

持久层由一个JPA类组成,该类有三个属性:

源代码:

创建类后,必须参数化持久性.xml根据您的设置。

您必须在数据库中创建架构并更新URL。

不要忘记更新用户和密码:

如果您使用的是不同的数据库驱动程序,请不要忘记更新POM.xml文件

要检查持久层,请使用数据库提供的工具,在mysql命令行中:

服务层由Apache Olingo实现组成,中映射了一个类网站.xml作为具有所有服务层的servlet。

该类在package flight服务中。

属性PUNIT\u name中的名称必须与您的持久性.xml.

The网站.xml从flight web package必须包含这个类到servlet的映射:

您可以测试服务层通过浏览器中的servlet URL直接访问:

要获取持久层的所有参数,请使用$metadata在URL末尾检查它。

现在让我们用服务层测试所有操作。

对于某些测试,需要REST客户端,例如chrome的"POSTMAN"或"Advanced REST client App"web store.

要在数据库中列出航班,只需请求实体的列表:

发送一个ID为0的帖子,ID将自动生成。

发送一个放入最近创建的条目:

发送一个删除方法到要删除的条目的URL。

如果服务层正常,返现网,所有操作都可以从SAPUI5触发。

应用程序由两个页面组成,一个用于航班列表,另一个用于添加、删除、更新操作。

索引如下:

在列表视图中,我们将OData与sap.m.Table绑定:

items属性必须指向来自的集合名称OData和来自$metadata属性的行项目:

在控制器中您必须为您的视图设置oModel和列表:

要插入新条目,列表中有一个按钮,

此按钮将调用控制器中的方法onAdd。

控制器方法将调用add视图:

表单必须具有绑定到odata属性:

保存按钮将触发控制器中POST操作的调用:

对于创建新条目,字段ID将为空,因此将在该代码段中调用"createEntry"方法:

通过蓝色代码创建新条目:

更改条目,方法更新需要在模型中触发,

在屏幕中"保存"按钮将调用更新功能,

屏幕中隐藏的字段ID将填充航班ID,因此将执行以下蓝色代码:

删除实体,控制器将在模型中调用remove方法。

下面的代码片段对此负责:

我真的希望这个示例可以帮助一些人解决模型操作的绑定和调用中的问题。

如果您发现任何错误,或者想添加更多功能,请与我联系,以便我可以提供github的访问权限。

如果这样做的话不知怎的帮助了你,请喜欢它和分享

好,广泛的博客!

这肯定会帮助其他使用JPA/Apache Olingo的人从Java平台上做OData CRUD(我本来会选择SAP HANA云平台,但唉)

你好,Allan,你的例子帮助我为我们的开发人员准备了很多针对SAP和非SAP系统使用SAPUI5的原型!

但在我们的业务中,什么是云,我们总是要深入细节,这会产生更多的问题(我就在这里)。

只要没有外键约束,我就可以成功地使用一个或多个表(Technic:SAPUI5、Apache Olingo、MariaDB)。(部门id引用部门表中id的员工表)。我认为Eclipse从表中生成JPA实体的方式有问题。所有的服务URL都在工作(元数据、实体集、扩展),但是当我尝试插入一个员工,将值放入部门id时,我得到了一个JPA错误(…字段不能为空)…实体名称是正确的地址。我想分享我的编码(在你的文章上下文中的位置在哪里?)或者你有一个外键主题积垢的例子?

非常感谢

Hans-Jörg

嗨,Hans,非常感谢您的反馈。

您能发布您的sapui5试图发送的json包吗?

我有一个使用olingo外键的例子,深度插入在olingo上还不起作用。

为了确保olingo和JPA一起工作,请考虑在Chrome上的Postman或Rest客户端上测试它。

在这个场景中,我为RFID实体创建了一个条目,并在truckdetails字段中为我提供了链接到的卡车的URL这个RFID。

我发送给olingo的包:

我相信外键处理在这个帖子中是非常受欢迎的,我可以链接到你的帖子或者你可以在这个页面上写一个新的部分。

无论如何,将它放在同一个应用程序中是个好主意,我可以将提交授权分享给你的用户。

你好,艾伦,

让我快速尝试另一种方式我现在就在里面。明天早上我会给你必要的信息。我仍然相信ApacheOlingo如何与EclipseJPA工具中生成的实体类一起工作有问题。

非常感谢,直到明天

Hans-Jörg

嗨,Hans,在我的外键项目中,我使用这个依赖:

org.eclipse.persistence网站

javax.persistence文件

2.1.0

你好,艾伦,

我正在使用两个Eclipse项目:

A用于通过Apache Olingo JPA针对MariaDB表提供OData服务。

B用于使用服务并通过前端的SAPUI5呈现数据。

我目前没有使用Maven,所以我将向您发送:

持久性.xml来自

的元数据来自

的实体集示例来自

的sapui5对话框(在您看到的背景数据)

Tags: 服务器  建设局  优惠  新注册  郑州  注册  网站 

站点信息

  • 文章统计93682篇文章