OData против XSJS в разработке SAP Hana
Я занимаюсь разработкой приложения с использованием SAP Hana studio, и я не понимаю, почему я буду использовать XSODATA и почему я буду использовать XSJS. Почему я не могу просто использовать файл XSODATA для выполнения всех моих транзакций базы данных? Я получаю XSJS на стороне сервера, но если я выполняю базовые операции CRUD, могу ли я просто использовать XSODATA?
Смежный вопрос, будет ли файл XSODATA создаваться в SAP Hana studio и нормально работать оттуда? Причина, по которой я спрашиваю, заключается в том, что раньше мне нужно было создать сервис в построителе сервисов Gateway и предоставить URL-адрес приложению для доступа к нему. Но теперь я предполагаю, что все сделано в студии hana, и нет необходимости делать что-то кроме этого.
2 ответа
Вы правы. Если все, что вам нужно, это CRUDQ в базе данных, тогда XSODATA - это то, что вам нужно. XSJS следует использовать для операций без CRUD (например, пользовательских операций обработки, загрузки файлов и т. Д.).
И да, вы можете создать его прямо в студии HANA или в Web Based Workbench. Шлюз используется, когда у вас есть система Netweaver (не обязательно система HANA), и вы хотите предоставить оттуда некоторые бизнес-объекты. Это две разные технологии (Netweaver и HANA XS Classic) с различными сценариями использования (хотя в некоторых случаях их можно комбинировать).
Для операций CRUD XSOData будет идеальным, когда вы находитесь на HANA. Поскольку XSOData реализует протокол OData, большая часть тяжелой работы выполняется базовым механизмом XS. Поэтому, предоставив определение сервиса, вы можете ожидать, что все будет работать "из коробки". Вы также получаете набор функций OData v2.0.
Однако с XSJS вам придется реализовать все операции CRUD. Это может быть полезно для сложных сценариев, например, когда вы пытаетесь отправить / получить данные от внешних служб, идентифицировать пользователей сеанса, запустить какой-либо динамический sql, загрузить файл, электронную почту и тому подобное. Если XSOData не удовлетворяет ваши потребности в таких случаях, XSJS - это путь.
Кроме того, если вы разрабатываете приложения UI5, лучше выбрать XSOData, поскольку будет гораздо проще использовать службы OData в UI5 по сравнению с другими службами REST, такими как XSJS.