题目: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/…
http://localhost:4004/browse/…
更多 Jerry 的原创文章,尽在:” 汪子熙 ”: