Войти

Настройка Агента для получения данных через JDBC

Дата актуализации: 23.07.2025.
Причины актуализации:
— выход версии Агента СМЭВ4 3.22.0;
— особенности новой версии ПО DBeaver 24.2.2 и выше.

JDBC (от англ. Java DataBase Connectivity) — платформенно независимый промышленный стандарт взаимодействия Java-приложений с различными СУБД.

Настройка JDBC-сервера осуществляется посредством конфигурационного файла Агента СМЭВ4 application.yml. Откройте файл и при необходимости отредактируйте секцию query_server:

Рисунок 1 Конфигурационный файл Агента СМЭВ4 application.yml.png

Рисунок 1 – Конфигурационный файл Агента СМЭВ4 application.yml

где:

  • port – порт TCP/IP, используемый для подключения по стандарту JDBC.
Для начала работы потребуется:
  • JDBC-драйвер (необходимо выгрузить из установленного Агента).
Агент СМЭВ4 поддерживает специализированный протокол для исполнения запросов, эталонная реализация которого представлена JDBC-драйвером. Файл драйвера входит в состав дистрибутива Агента СМЭВ4. Его можно получить по адресу http://<ваш_хост>:8182/api/v1/jdbc-driver (для версии Агента в докере порт - 8192).
  • Клиент по подключению (в данной инструкции для проверки будет использоваться клиентское ПО «DBeaver», скачать которое можно по ссылке: https://dbeaver.io).

Добавление JDBC-драйвера

  1.   Для начала необходимо запустить DBeaver, перейти во вкладку База данных/Управление драйверами:

Рисунок 2 DBeaver. Управление драйверами.png

Рисунок 2 – DBeaver. Управление драйверами


  2.   В окне Менеджера Драйверов нажать кнопку Новый.
  3.   В окне создания драйвера, во вкладке Библиотеки нажать кнопку Добавить файл.
  4.   Выбрать jar-файл библиотеки JDBC-подключения.

Рисунок 3 DBeaver. Добавление драйвера.png

Рисунок 3 – DBeaver. Добавление драйвера


  5.   Далее перейти во вкладку Настройки и указать параметры:
  • Имя драйвера: произвольное имя драйвера, например «AgentJdbcDriver»;
  • Шаблон URL: jdbc:podd://{host}:{port};
  • Поставить флажки ВстроенныйБез авторизацииПустой пароль и нажать кнопку ОК.

Рисунок 4 DBeaver. Настройки драйвера.png

Рисунок 4 – DBeaver. Настройки драйвера


В результате в Менеджере Драйверов отобразится созданный по шагам выше драйвер AgentJdbcDriver.

  6.   Добавить класс драйвера следующими действиями:

  • В Менеджере Драйверов выбрать из списка драйверов AgentJdbcDriver;
  • Нажать на Изменить ... и указать параметры;
  • В редакторе драйвера перейти во вкладку Библиотеки;
  • Выберите добавленный драйвер, нажав на него;
  • Нажать кнопку Найти класс. После непродолжительного поиска на выбор будет предложен список доступных классов. Необходимо выбрать класс «ru.rtlabs.client.jdbc.PoddDriver» и следом нажать кнопку ОК:

Рисунок 5 DBeaver. Добавление класса дравверу.png

Рисунок 5 – DBeaver. Добавление класса драйверу

Теперь, если перейти в настройки драйвера, можно увидеть что в настройки подтянулся класс драйвера в поле Имя Класса (см. рисунок 6):

Рисунок 6 Dbeaver. Изменение настроек драйвера.png

Рисунок 6 – Dbeaver. Изменение настроек драйвера

  7.   Теперь необходимо создать профиль подключения к JDBC-интерфейсу Агента СМЭВ4.

Для этого:
  • Открыть меню База данных/Новое соединение:

Рисунок 7 DBeaver. Новое соединение с БД.png

Рисунок 7 – DBeaver. Новое соединение с БД


  • На странице выбора типа соединения, выбрать ранее подготовленный драйвер (на примере, «AgentJdbcDriver») и нажать кнопку Далее:

Рисунок 8 DBeaver. Выбор драйвера для соединения с БД.png

Рисунок 8 – DBeaver. Выбор драйвера для соединения с БД


  • В окне настройки базового соединения задать параметры хоста, на котором работает Агент СМЭВ4 (на примере ниже настройка производится на локальной машине);
  • Стандартный порт: номер порта TCP/IP, используемого для подключения по стандарту JDBC и указанный в конфигурационном файле application.yml. По умолчанию – 8183:
  • После ввода хоста и порта рекомендуется проверить соединение. Нажмите на Тест соединения ...:

Рисунок 9 DBeaver. Настройка соединения с БД.png

Рисунок 9 – DBeaver. Настройка соединения с БД

Результат успешного теста представлен на рисунке 10:

Рисунок 10 DBeaver. Тест соединения с БД.png 

Рисунок 10 – DBeaver. Тест соединения с БД


  • Остаётся только применить настройки. Нажмите кнопку Готово:

Рисунок 11 DBeaver. Применение настроек соединения с БД.png

Рисунок 11 – DBeaver. Применение настроек соединения с БД

Соединение создано, теперь можно проверить прохождение запроса до Ядра СМЭВ4:

          1)     Для этого необходимо нажать правой кнопкой мыши на только что созданное соединение и выбрать пункт меню Подключиться:

Рисунок 12 DBeaver. Подключение к БД.png

Рисунок 12 – DBeaver. Подключение к БД

          2)     Перейти в меню Редактор SQL/Открыть SQL скрипт (или нажмите F3):

Рисунок 13 DBeaver. Редактор SQL-запросов.png

Рисунок 13 – DBeaver. Редактор SQL-запросов

          3)     Ввести тестовый запрос «select 1» и нажать на значок Выполнить SQL-запрос на панели быстрых действий или нажать комбинацию клавиш Ctrl+Enter:

Рисунок 14 DBeaver. Тестовый запрос select 1.png

Рисунок 14 – DBeaver. Тестовый запрос select 1

Отсутствие ошибок выполнения и отображение в окне результата запроса в виде записи «1» свидетельствует о том, что:

  • Агент СМЭВ4 настроен, работает и успешно взаимодействует с Ядром СМЭВ4;
  • JDBC- интерфейс Агента СМЭВ4 функционирует нормально;
  • Появился навык использования JDBC-интерфейса Агента СМЭВ4;
  • Теперь можно отправлять SQL запросы к витринам, доступ к которым предоставлен. 

Подробнее с синтаксисом SQL-запросов можно ознакомиться в документах:

С примером реализации взаимодействия своих приложений с Агентом СМЭВ 4 посредством JDBC-соединения можно ознакомиться в документе «Руководство администратора Агента СМЭВ4», расположенном на портале ЕСКС в разделе Документы ПО для Участников СМЭВ (подраздел Агент СМЭВ4).

Авторизуйтесь, чтобы оставить комментарий к статье