🔥 Jmix 3.0 вышел на Spring Boot 4 и научился менять модель данных без перезапуска
В enterprise-приложениях просьба «добавить ещё одно поле» часто означает изменение сущности, миграцию БД, доработку UI и новый деплой. Jmix 3.0 предлагает другой подход: расширять модель уже работающего приложения через административный интерфейс.
🧱 Платформу перевели на новый стек
В основе Jmix 3.0 теперь:
- Spring Boot 4.0
- Vaadin 25.1
- EclipseLink 5.0
- Flowable 8.0
- Java 21 или Java 25
Для разработки потребуется Jmix Studio 3.0 и IntelliJ IDEA 2025.3+. Это крупное обновление базовых зависимостей, которое синхронизирует фреймворк с актуальной Java-экосистемой.
⚙️ Dynamic Model: новые сущности без изменения исходников
Главная фича релиза — дополнение Dynamic Model. Через графический административный интерфейс можно:
- Добавлять атрибуты к существующим сущностям;
- Создавать новые сущности и таблицы БД;
- Генерировать для них экраны;
- Задавать валидацию;
- Настраивать ролевую безопасность.
И всё это — без изменения исходного кода и перезапуска приложения.
Для систем, где модель регулярно адаптируют под процессы заказчика, это потенциально сокращает путь от бизнес-запроса до работающего изменения.
🤖 LLM-ассистент и инструменты для coding agents
Новое дополнение AI Tools добавляет готовый чат-интерфейс, программный API и предопределённые инструменты для доступа к данным на естественном языке. Предусмотрены и точки расширения для подключения собственных инструментов.
Jmix Studio также умеет устанавливать в проект:
- agent skills;
- инструкции;
- MCP-серверы из Jmix AI Agent Guidelines.
Заявлена поддержка Claude Code CLI, Codex, OpenCode и Junie.
🛠 Что ещё появилось
- Runtime-генерация list/detail-экранов через
@ListViewTemplateи@DetailViewTemplate. - Fluent Builder API для
genericFilter,propertyFilter,jpqlFilterиgroupFilter. - Компонент
markdownEditorс редактированием, предпросмотром, биндингом данных и валидацией. - Готовые рендереры:
detailLinkRendererиdetailButtonRendererдляdataGridиtreeDataGrid. - Предпросмотр Message Templates с ранним обнаружением ошибок FreeMarker и отсутствующих параметров.
- Новая тема Aura из Vaadin 25; тема Lumo тоже остаётся доступной.
- Безопасность: требование сменить временный пароль при следующем входе.
- Поддержка Kotlin DSL в сборочных скриптах со стороны Studio.
💡 Практический профит
Jmix 3.0 движется от классического code-first-фреймворка к платформе, где часть изменений можно безопасно переносить в runtime. Это особенно интересно для внутренних систем, CRM, back office и других приложений с часто меняющейся предметной моделью.
⚠️ Но Dynamic Model затрагивает схему данных и безопасность, поэтому перед применением в production стоит отдельно проверить миграции, аудит изменений, резервное копирование и поведение интеграций, которые ожидают статичную модель.
Вопрос к сообществу:
Стали бы вы разрешать администраторам менять сущности работающей enterprise-системы через UI — или схема БД должна оставаться исключительно под контролем разработчиков?
