Have an amazing solution built in RAD Studio? Let us know. Looking for discounts? Visit our Special Offers page!
Новости

Данные из Dataset в формате JSON для поддержки JavaScript-клиентов

Поддержка JSON-представления данных появилась в RAD Studio очень давно и с тех пор сильно видоизменялась и расширялась. Начиная с обеспечения разработок для DataSnap в DBX, и включая поддержку нереляционных данных и запросов MongoDB в FireDAC – JSON применяется как самая популярная опция представления и передачи данных, будь то нативные приложения на самых разных устройствах, или многоуровневые WEB-системы, поддерживающие много протоколов обмена и реализованные на любых популярных средствах разработки и инструментах.

За прошедшие годы RAD Studio получила признание, как средство исключительно быстрого создания корпоративных и индивидуальных back-end платформ, в том числе SOAP и сервис-ориентированных. Архитектура RAD Studio позволяет использовать для этого самые разные варианты решений работы с JSON, основанные на различных наборах компонент, имеющихся в первоначальном наборе или от независимых внешних разработчиков. 

В последнее время компания Embarcadero уделяет большое внимание развитию и расширению поддержки распространенных средств создания клиентских приложений для многоуровневых систем, в том числе популярных инструментов, библиотек и фреймворков для создания WEB-клиентов приложений, реализованных на JavaScript.

Возможности самого свежего релиза Tokyo 10.2 Release 2 были расширены для упрощения взаимодействия и обмена данными с JavaScript-клиентами, например, созданными на AngularJS, ReactJS или Sencha.

Лучше всего показать эту новую возможность на примерах. 

Откроем RAD Studio. Для примера будем создавать проекты на Delphi. Создадим новый проект New – Other – EMS Package. Данные будем брать из таблицы Employee одноименной БД из примеров для InterBase. Положим на форму TFDConnection и настроим его для соединения с этой БД. Также поместим на модуль TFDQuery, свяжем его с TFDConnection и зададим запрос SQL = ‘Select * from EMPLOYEE’. Тогда, по-старому, обработчик вызова GET мог бы выглядеть так:

Однако, в этом случае в тело ответа передаются не только найденные данные из запроса, но все описание датасета целиком, включая метаданные, в виде JSON. Для клиентов, написанных на JavaScript это не всегда приемлемо, поэтому часто приходится заменять этот короткий кусок кода значительно более сложным и длинным, чтобы сформировать jsonArray вручную.

Элегантное и быстрое решение стало возможно в Tokyo 10.2 Release 2 —  в этом релизе были расширены возможности поддержки JSON. Если добавить на модуль еще три компонента (см картинку),

то код упрощается до двух строк:

Я выбрал для примера RAD Server и FireDAC, которые входят в стандартную поставку RAD Studio, но описываемые приемы настолько универсальны, что могут быть использованы в любых проектах, для любого WEB-сервиса, написанного на Delphi или C++Builder, даже в простейшем проекте WebBroker, с любым dataset, отличным от FireDAC – это открытое и очень гибкое решение. 

Подробнее можно ознакомиться на канале Embarcadero Russia YouTube    https://www.youtube.com/watch?v=PMjG76dKphY 


 

RAD Studio 13.2 Florence Now Available! Kai 1.1.1 Now Available! What's Coming in RAD Studio 13.2 Florence

Reduce development time and get to market faster with RAD Studio, Delphi, or C++Builder.
Design. Code. Compile. Deploy.

Start Free Trial   Upgrade Today

   Free Delphi Community Edition   Free C++Builder Community Edition

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

IN THE ARTICLES