Хранилища данных

Основное хранилище данных создается одновременно с приложением Jmix и доступно из Окна инструментов Jmix.

data tree

Двойным щелчком мыши можно открыть диалоговое окно свойств хранилища данных. По умолчанию в качестве типа базы данных задан HSQLDB.

data properties

Следующие свойства доступны как для основного, так и для дополнительных хранилищ данных:

  • Database type – тип сервера базы данных. Вы можете выбрать одну из доступных баз данных из списка.

  • Database URL – хост, порт и имя базы данных.

    • Connection params – другие параметры подключения. Формат параметров подключения зависит от выбранной СУБД. Строка должна содержать разделитель между именем базы данных и параметрами. Вы можете использовать кнопку карандаша в правой части поля Connection params для большего удобства ввода параметров подключения. Тогда Studio автоматически сформирует строку подключения, добавляя символы-разделители, специфичные для СУБД.

      data params
    • Show raw URL – показывает параметры подключения в виде URL.

    • Integrated Security – включает соответствующую опцию проверки подлинности при подключении к базе данных Microsoft SQL Server 2012+.

  • Database user и Password – учетные данные для подключения к базе данных.

Вы можете использовать плейсхолдеры типа ${VAR:default_value}, где VAR – это переменная окружения для установки свойств базы данных.

data vars

Studio подменяет плейсхолдеры и использует полученные значения для всех операций с базой данных: тестовое подключение, воссоздание, обновление, Liquibase diff и т.д.

Раздел Supported DB Types содержит опцию Enable support for several DB types. Если эта опция активна, вы можете выбрать несколько поддерживаемых баз данных. Studio сгенерирует один набор скриптов миграции Liquibase, поддерживающих все выбранные типы баз данных.

Раздел Database Identifiers Length Mode позволяет выбрать один из трех доступных режимов:

  • Oracle - максимальная длина таблиц, столбцов, индексов, других имен не более 30 символов.

  • Postgres - максимальная длина таблиц, столбцов, индексов, других имен не более 64 символов.

  • Unlimited - неограниченная длина таблиц, столбцов, индексов, других имен.

Дополнительное хранилище данных

Чтобы создать дополнительное хранилище данных, используйте действие из контекстного меню. Либо можно выбрать действие в разделе Advanced:

data advanced

См. описание свойств базы данных, общих как для основного, так и для дополнительных хранилищ данных, приведенное выше.

data schema

Укажите для дополнительного хранилища данных имя в Data store name и выберите опцию в разделе DB Schema Management:

  • Disabled – Studio не отслеживает изменения схемы базы данных для этого хранилища данных. Это режим по умолчанию.

  • Update Only – предоставляет действие обновления и создает файлы Liquibase changelog.

  • Create and Update – предоставляет действия обновления и воссоздания, а также создает скрипты Liquibase.

Действия с хранилищем данных

Щелкнув правой кнопкой мыши элемент хранилища данных в дереве проекта Jmix, вы можете открыть его контекстное меню:

data actions

Количество действий, отображаемых в меню, зависит от типа хранилища данных и режима управления схемой БД.

  • New → Additional Data Store – открывает диалоговое окно для создания нового хранилища данных.

  • New → Liquibase Changelog – генерирует новый файл changelog с корректным именем.

  • Manage Data Store – открывает диалоговое окно для редактирования настроек хранилища данных.

  • Delete Data Store – удаляет хранилище данных вместе со всеми связанными файлами конфигурации и Liquibase changelogs.

  • Recreate – воссоздает базу данных, принадлежащую выбранному хранилищу данных. Применимо для основного хранилища данных и дополнительных хранилищ данных с режимом управления схемой Create and Update.

  • Update – обновляет схему базы данных для выбранного хранилища данных. Применимо для основного хранилища данных и дополнительных хранилищ данных с режимами управления схемой Update Only и Create and Update.

  • Generate Liquibase Changelog – генерирует файлы changelog для выбранного хранилища данных путем сравнения модели данных со схемой базы данных. Применимо для основного хранилища данных и дополнительных хранилищ данных с режимами управления схемой Update Only и Create and Update.

    Для этой функции требуется подписка RAD или Enterprise. Если у вас нет подписки, см. как получить пробную версию.

  • Check Liquibase Changelog Includes – проверяет, соответствуют ли включения в корневом файле changelog дополнениям, используемым в проекте. Если есть несоответствие, Studio показывает диалоговое окно уведомления и предлагает добавить или удалить включения.

  • Generate Model from Databaseгенерирует модель данных из базы данных.

  • Jump to Source – открывает класс конфигурации Spring.