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

阿里云_负载均衡软件_促销

小七 141 0

在这个博客中,我们将看到一个使用cloudfoundry上的hanadb服务的Olingo odatav2.0服务示例。这个例子使用Spring cloud connectors和Spring cloud HANA Service Connector来连接cloud foundry中的HANA服务。SpringWeb应用程序的SpringBoot 1.5.2。SpringCloudConnector 1.2.3.用于连接到CloudFoundry服务的版本。Olingo OData V2.0.8-sap-05用于OData服务。JPA的eclipse链接2.6.4。HANA服务连接器1.0.4.用于连接到HANA服务的版本。Maven 3.0.5或更高版本用于应用程序构建。CloudFoundry CommandLineInterface(CLI),用于将应用程序部署到CloudFoundry。

让我们从pom.xml文件定义所有必需的依赖项。完整的代码可以从这里下载

pom中的依赖项是:

Olingo OData SAP internal version 2.0.8-SAP-05。非SAP版本也可以。用于Web应用程序开发的SpringBoot1.5.2。它负责添加Spring核心库。JPA的eclipselinkpersistence V2.6.4。SpringCloud服务和SpringCloudFoundry连接器,它们在我们的代码中提供访问CloudFoundry服务所需的API。Spring cloud foundry HANA服务连接器,数据挖掘和大数据,用于连接到SAP CF中的HANA服务。这是必需的,因为cloud foundry默认情况下不支持HANA服务的API。

请注意,我们还启用了静态编织,大数据怎么用,以防止在启动应用程序时出现任何加载时编织异常。

在继续之前,建议运行"mvn package"以确保所有必需的库都已下载并添加到类路径中。这将把我们的应用程序打包到.war文件中。

我们创建的第一个Java类将是一个简单的JPA实体,映射到DB表Employee:

接下来我们将看到持久性.xml:

在这个文件中,我们禁用了编织,因为我们已经在中启用了静态编织pom.xml文件这进一步防止了弹簧框架的任何负载时间编织创建所需的Java类。为了简单起见,包名和导入被省略了。

main方法通过调用run方法将应用程序委托给SpringApplication。SpringApplication将引导我们的应用程序。

在configure方法中,我们通过调用SpringApplicationBuilder的sources方法来通知Spring Boot我们的配置类"CloudConfig"。

接下来,永久免费的云服务器,什么是大数据技术,我们创建定义应用程序所需bean的配置类。

在这个类中,我们首先在应用程序上下文中创建以下类型的bean:

datasource–是从cloudfoundry中创建的HANA服务创建的。为此,我们使用了超类AbstractCloudConfig提供的方法。我们本可以省略将服务的名称传递给dataSource(),因为它是应用程序绑定到的唯一数据源服务。entityManagerFactory–我们使用DataSouceBean创建EMF实例。注意,淘客网店推广平台,我们对jpa使用eclipse链接,而不是对EMF使用Spring默认的hibernate。odataServlet–使用必需的init参数创建OData所需的Servlet。这类似于在web应用程序部署描述符中创建servlet–网站.xml使用servlet XML标记。

接下来我们创建扩展ODataJPAServiceFactory的JPAServiceFactory。

由于JPAServiceFactory不是由Spring管理的,所以我们无法将EMFbean自动连接到JPAServiceFactory。为了获取emf,我们使用了一个定制类SpringContextUtil。接下来我们将看到

关于这个类的几点:

扩展了ApplicationContextAware of Spring,这样它就可以得到SpringApplicationContext(存储所需bean的地方)的通知。这是向非Spring管理的类公开Spring应用程序上下文bean的最简单方法。提供一个静态getBean方法,从Spring应用程序上下文中获取bean。这个方法应该只用于不能进行bean注入的类。

重要:我们还需要复制njdbc.jar文件进入所需HANA JDBC驱动程序类的WEB-INF/lib文件夹。到目前为止,还没有maven依赖项可以添加njdbc.jar文件.

现在让我们看看清单.ymlCLI部署说明文件:

该文件应放在我们应用程序的根目录中。它将应用程序war的路径、HANA服务实例和默认配置文件定义为"cloud"。

现在让我们构建应用程序,在从CLI运行"cf push"之前,我们还应该在cloud foundry Service market place中创建名为"HANA Schema svc"的HANA架构服务。请务必从下面的服务计划中选择"schema":

最后从已创建的目录中执行cf push清单.yml希望如果一切正常,应用程序应该被部署,odataurl应该可以访问有用链接:-

基于OData、JPA和Spring Boot的OData示例:https://github.com/jpenninkhof/odata-样板/弹簧云连接器:有关HANA服务计划的信息:https://github.wdf.sap.corp/xs2/xsa-docs/wiki/HANASAP云平台的Spring云连接器:https://github.com/SAP/spring-cloud-SAP云中的hello world示例:https://github.com/SAP/cloud-hello-spring-cloud