SAP Cloud Application Programming 裏的@(path) 註解

標題:SAP Cloud Application Programming 裏的@(path:'/browse')

service 實現的 .cds 文件源代碼:

using { sap.capire.bookshop as my } from '../db/schema';
service CatalogService @(path:'/browse') {

  @readonly entity Books as SELECT from my.Books { *,
    author.name as author
  } excluding { createdBy, modifiedBy };

  @readonly entity ListOfBooks as SELECT from Books
  excluding { descr };

這個@(path:'/browse'),相當於 Spring 裏的@Path 註解。

  • as SELECT from my.Books : 和 SAP ABAP CDS view 語法類似,指定 entity 的主數據源。

  • my 是 別名,完整的數據庫表名爲 sap.capire.bookshop,通過 using 關鍵字,將表名同別名關聯起來。

  • author.name as author: 該語法也和SAP ABAP CDS view類似,因爲 author 是 Books entity裏一個 association,故使用 .name 訪問 association target entity,Author 的 name字段。

  • excluding { createdBy, modifiedBy } : 暴露給 OData 的字段不包括 createdBy 和 modifiedBy 字段。

  • @readonly entity ListOfBooks as SELECT from Books excluding { descr } :類 SQL 語句,從 Books 裏讀取除了 descr 之外的所有字段。

最後的效果:

http://localhost:4004/browse/Books

http://localhost:4004/browse/ListOfBooks

更多Jerry的原創文章,盡在:"汪子熙":


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章