首先在我的项目根目录新建一个文件 manifest.yml
,内容如下:
---
applications:
- name: bookstore
path: srv/target/bookstore-exec.jar
random-route: true
services:
- bookstore-hana
文件形容了应用程序的名称和能够找到应用程序存档的门路。Spring Boot 应用程序能够从单个 JAR 存档中部署,如下面 path 字段值所示:srv/target/bookstore-exec.jar
.
应用程序的路由(即可用的 HTTP 端点)随机生成 (random-route: true
),以避免与其余应用程序路由发生冲突。
之前的 SAP HANA 服务实例的名称 bookstore-hana
在此处的服务局部 (bookstore-hana) 下应用。
Cloud Foundry 应用 Open Service Broker API
为应用程序提供服务。在 Cloud Foundry 上运行应用程序时,能够应用环境变量 VCAP_SERVICES(相似于 default-env.json 的内容),其中蕴含所有必须的服务凭证。CAP Java 能够主动读取此环境变量并将您的应用程序配置为应用 SAP HANA 数据库。
所形容的性能再次作为 CAP Java 中的另一个插件提供。因而,您须要向我的项目中增加额定的 Maven 依赖项。该依赖项将带来从 Cloud Foundry 的 VCAP_SERVICES 环境变量读取服务绑定的能力。
为了应用 CloudFoundry 上的 Open Service Broker API
,须要在 pom.xml
里增加如下的依赖:
<dependency>
<groupId>com.sap.cds</groupId>
<artifactId>cds-feature-cloudfoundry</artifactId>
</dependency>
即便启用了 Cloud Foundry 性能,CAP Java 也能够确保应用程序依然能够在本地运行,应用基于 default-env.json 主动配置的 SQLite 或 SAP HANA。它在所有环境中提供无缝的开发人员体验。
如果咱们向应用程序增加了额定的 Java 零碎属性 -Dspring-boot.run.profiles=cloud,以确保 application.yaml 中的默认 SQLite 配置不会失效。将应用程序部署到 Cloud Foundry 时,Cloud Foundry Java Buildpack 会主动实现。
应用命令行 mvn clean install
进行构建:
应用 cf push 进行部署:
最终生成的利用 url:
https://bookstore-cheerful-ba…