我正在使用SAP Hana studio开发一个应用程序,我很困惑为什么我会使用XSODATA以及为什么我会使用XSJS。为什么我不能使用XSODATA文件来执行所有数据库事务?我得到XSJS是服务器端,但如果我正在做基本的CRUD操作,我可以使用XSODATA吗?
一个相关的问题,XSODATA文件是否会在SAP Hana工作室中创建并从那里正常工作?我问的原因是因为在我必须在网关服务构建器中创建服务并提供应用程序的URL以访问它之前。但现在我假设一切都在hana工作室完成,除此之外没有必要做任何事情。
答案 0 :(得分:5)
对于CRUD操作,当您使用HANA时,XSOData将是理想之选。由于XSOData实现了OData协议,因此大部分繁重工作都是由底层的XS引擎完成的。因此,一旦提供了服务定义,您就可以期待一切都能开箱即用。您还可以获得OData v2.0的功能集。
但是使用XSJS,您必须实现所有CRUD操作。这对于复杂的场景非常有用,例如当您尝试从外部服务发送/接收数据,识别会话用户,运行某些动态sql,文件上载,电子邮件等时。如果在这种情况下XSOData无法满足您的需求,那么XSJS就是您的选择。
此外,如果您正在开发UI5应用程序,XSOData是一个更好的选择,因为与其他REST服务(如XSJS)相比,在UI5中使用OData服务要容易得多。
答案 1 :(得分:4)
你是对的。如果您需要的只是数据库上的CRUDQ,那么XSODATA就是您的选择。 XSJS应该用于非CRUD操作(例如自定义处理操作,文件上传等)。
是的,您可以直接在HANA工作室或基于Web的Workbench中创建它。当您拥有Netweaver系统(不一定是HANA系统)并且您希望从那里公开某些业务实体时,将使用该网关。它们是两种不同的技术(Netweaver与HANA XS Classic),具有不同的使用场景(尽管在某些情况下您可以将它们组合在一起)。