autumn-data
autumn-data
- это библиотека для простого подключения и работы с базами данных в ОСенних проектах (autumn framework), используя ORM-библиотеку nixel2007/entity и библиотеку наследования nixel2007/extends. autumn-data
расширяет возможности entity
, приправляя их осенней магией.
Установка
Для установки библиотеки используйте команду:
opm install autumn-data
Описание
Библиотека autumn-data
добавляет следующие возможности над стандартной функциональностью entity:
- Интеграция с autumn - полная интеграция с контекстом приложения ОСени
- Автоматическая инициализация менеджера сущностей из конфигурации приложения - сама регистрирует все сущности и настраивает источники данных
- Регистрация менеджера и хранилищ сущностей как желудей - позволяет легко внедрять хранилища сущностей как зависимости
- Расширение Хранилища сущностей - добавляет аннотации для создания собственных хранилищ сущностей, наследующих базовые методы от
entity
- Автогенерация запросов - автоматическое создание запросов к базе данных на основе имен добавленных методов
Быстрый старт
1. Определение сущности
&Идентификатор
&Колонка(Тип = "Целое")
Перем Идентификатор Экспорт;
&Колонка(Тип = "Строка", Длина = 100)
Перем Имя Экспорт;
&Сущность(ИмяТаблицы = "Пользователи")
Процедура ПриСозданииОбъекта()
КонецПроцедуры
2. Настройка источника данных
Создайте файл autumn-properties.json
в корне вашего проекта и добавьте секцию для источников данных:
{
"data": {
"ИсточникиДанных": {
"ТипКоннектора": "КоннекторSQLite",
"СтрокаСоединения": "Data Source=database.db"
}
}
}
ОСень автоматически подхватит настройки из этого файла при запуске приложения.
3. Базовое использование
#Использовать autumn
#Использовать autumn-data
#Использовать "."
Поделка = Новый Поделка();
Поделка.ЗапуститьПриложение();
// Желудь "ХранилищеСущностейПользователи" автоматически регистрируется
// при запуске приложения на основании типа &Сущности "Пользователь"
Хранилище = Поделка.НайтиЖелудь("ХранилищеСущностейПользователь");
Пользователь = Хранилище.ПолучитьОдно(123);
TIP
Не останавливайтесь на базовом использовании! Библиотека autumn-data
предоставляет расширенные возможности для работы с базами данных, включая расширение функциональности хранилищ сущностей и автоматическую генерацию методов запросов. Подробнее в следующих разделах документации.
Основные концепции
Сущности
Сущности - это классы, которые представляют таблицы в базе данных. Они помечаются аннотацией &Сущность
.
Хранилища сущностей
Хранилища - это классы-репозитории, которые предоставляют методы для работы с сущностями. Хранилища сущностей бывают двух видов:
- Предоставляемые библиотекой entity.
- Создаваемые пользователем, расширяющие возможности хранилищ из entity. Они помечаются аннотацией
&ХранилищеСущностей
.
Для работы с autumn-data
вам не обязательно создавать собственные &ХранилищеСущностей, так как библиотека автоматически создает хранилища для всех сущностей, зарегистрированных в приложении. Однако это может быть полезно для добавления специфических методов или логики.
Методы запросов
Методы, помеченные аннотацией &МетодЗапроса
, автоматически получают реализацию на основе своего имени. Поддерживаются различные паттерны имен методов для создания запросов.
Дальнейшее изучение
Руководство пользователя
- Настройка источников данных - конфигурация подключений к базам данных
- Методы запросов - автоматическая генерация реализаций методов обращения к базе данных
Справочник API
- Полный API справочник
- МетодЗапроса - описание аннотации для автоматической генерации методов запросов
- ХранилищеСущностей - создание расширенных репозиториев для сущностей
- ЗаготовкаОсеньДата - основной конфигуратор библиотеки
- НапильникХранилищеСущностей - процессор автогенерации методов
Лицензия
Этот проект лицензируется под лицензией MIT. Подробности см. в файле LICENSE.md.