如何在 SAP BTP 平台上重用另一个已经开发好的 service
假設(shè)我們的 SAP Business Technology Platform 平臺上已經(jīng)開發(fā)好了一個 products-service 項(xiàng)目:
我們希望在另一個 bookstore 項(xiàng)目里,重用 products-service 項(xiàng)目。
打開 products-service 項(xiàng)目,在 package.json 里找到其 name 的值:@sap/capire-products
創(chuàng)建一個 bookstore 項(xiàng)目:
mvn -B archetype:generate -DarchetypeArtifactId=cds-services-archetype -DarchetypeGroupId=com.sap.cds
-DarchetypeVersion=1.17.0
-DgroupId=com.sap.cap -DartifactId=bookstore
使用 open workspace 的功能打開這個項(xiàng)目:
執(zhí)行如下命令行,安裝指向 products-service 項(xiàng)目的依賴:
npm install $(npm pack …/products-service -s)
成功安裝完畢,現(xiàn)在在 bookstore 項(xiàng)目里,就能看到其依賴 products-service 的實(shí)現(xiàn)了:
npm pack 從 products-service 創(chuàng)建一個 tarball,然后直接將其用作書店應(yīng)用程序中的依賴項(xiàng)。 有關(guān) npm 包的更多信息:https://docs.npmjs.com/cli-commands/pack.html。
使用下面的命令行安裝依賴:
npm install && npm dedupe
現(xiàn)在 bookstore 項(xiàng)目的 package.json 里,就能看到 products-service 項(xiàng)目的依賴了。
在 db 文件夾下新建一個 schema.cds 文件,維護(hù) domain model:
在 srv 文件夾下創(chuàng)建一個 services.cds 文件:
在 db 文件夾下新建一個 data 文件夾,然后把 4 個 sample data 的 csv 文件放置進(jìn)去。
使用命令行部署 domain model 到 sqlite:
cds deploy --to sqlite
自動生成了一個 sqlite.db 文件,該文件名維護(hù)在 package.json 文件里,文件位于項(xiàng)目根目錄下:
修改項(xiàng)目里的 Application.yaml 文件,將數(shù)據(jù)庫的位置指向剛剛運(yùn)行的命令行 cds deploy --to sqlite 生成的 sqlite.db 文件。
第 11 行設(shè)置成 never 的原因是因?yàn)槲覀円呀?jīng)用命令行 cds deploy --to sqlite 對數(shù)據(jù)庫進(jìn)行了初始化操作。
修改 Business Application Studio 的 settings.json 文件,添加如下內(nèi)容:
"sqltools.connections": [{"name": "sqlite","dialect": "SQLite","database": "/home/user/projects/bookstore/sqlite.db"}]選擇 SQLTools:
可以看到剛才通過 csv 文件插入的數(shù)據(jù):
使用如下 url:
https://workspaces-ws-pdwk4-app1.us10.trial.applicationstudio.cloud.sap/odata/v4/BooksService/Books
就能訪問到之前通過 sap.capire.bookstore-Books.csv 插入到 SQLite 里的數(shù)據(jù)了:
總結(jié)
以上是生活随笔為你收集整理的如何在 SAP BTP 平台上重用另一个已经开发好的 service的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 网络谣言的源头:AI 生成的假新闻网站被
- 下一篇: 如何使用 ABAP 把多个文件打成一个