1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/starblues-springboot-plugin-framework-parent

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README_zh.md 7.5 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 03.03.2025 15:25 660ec4c

Фреймворк Spring-Boot с модульной архитектурой

  • Новый выпуск версии 3.0.0, созданный для динамического расширения систем.

Обзор | Overview

На текущий момент в сфере back-end разработки основным фреймворком остаётся Spring Boot. Данная система позволяет использовать модульную архитектуру при работе с этим фреймворком, что позволяет рассматривать каждый модуль как небольшую версию Spring Boot. Это решение помогает решить следующие проблемы:

  1. В корпоративных системах (To-B) различные заказчики могут иметь свои уникальные требования. Без создания новых веток и изменения базового кода можно расширять функционал через модули, где каждому заказчику будет доступен свой набор плагинов. Это идеальное решение для расширения системы без изменения её ядра.
  2. В системах для конечных пользователей (To-C) можно определять интерфейсы на уровне Java и реализовывать их в различных модулях, чтобы обеспечить динамическое расширение функционала.
  3. При использовании разных версий зависимостей, возникают конфликты. Этот фреймворк позволяет изолировать зависимости внутри каждого модуля, тем самым избегая проблем совместимости.
  4. Разные модули могут зависеть от различных библиотек и фреймворков. Можно выбирать необходимые зависимости для каждого конкретного модуля.
  5. Внутри модулей можно использовать различные Spring Boot Starter, что позволяет объединять различные функции в единую рабочую среду.
  6. Возможность динамической установки, удаления, запуска и остановки модулей без перезапуска основного приложения.

Описание | Description

Этот фреймворк позволяет внедрять модульную архитектуру в проекты на основе Spring Boot. Используя этот подход, вы сможете достичь следующих целей:

  • Создание мини-версий Spring Boot внутри каждого модуля, что делает работу простой и удобной.
  • Расширение функционала системы через модули, позволяющее отказаться от использования ветвей для различных требований.
  • Интеграция различных фреймворков и Spring Boot Starters.
  • Указание зависимостей на уровне модулей, что позволяет избежать необходимости указания этих зависимостей в основном приложении.
  • Изоляция зависимостей между модулями и основным приложением, что позволяет избежать конфликтов версий.
  • Динамическая установка и управление модулями без перезапуска основного приложения.
  • Возможность работы модулей как самостоятельных микросервисов.
  • Возможность расширения функционала системы путём использования этого фреймворка.

Особенности | Features

  1. Упрощённая процедура интеграции фреймворка.
  2. Близость к оригинальному способу разработки на Spring Boot.
  3. Поддержка двух режимов работы: изолированного и общего, что позволяет выбрать наиболее подходящий вариант.
  4. Использование Maven для сборки модулей, что позволяет самостоятельно компилировать и упаковывать модули.
  5. Разработка собственного загрузчика классов, который поддерживает использование различных зависимых jar-файлов внутри модулей.
  6. Возможность интеграции различных фреймворков и Spring Boot Starters внутри модулей.
  7. Динамическое управление модулями: установка, удаление, запуск и остановка.
  8. Изоляция основного приложения и модулей, что позволяет избежать конфликтов классов между основным приложением и модулями.

Архитектура | Architecture

architecture.png

Требования к среде выполнения | Requirements for the Runtime Environment

  1. JDK 1.8+
  2. Apache Maven 3.6+
  3. Spring Boot 2.3.1 - 2.7.6

Документация | Documentation

Производные продукты | Derived Products

Административная система управления с возможностью добавления плагинов для front-end и back-end

Инструмент ETL

Примеры | Examples

Контакты | Contacts

QQ группа для обсуждения: 859570617 (группа 1, полна), 536825438 (группа 2)

Поддержка | Support

Если вам понравился данный фреймворк или вы хотите помочь его дальнейшему развитию, вы можете сделать это следующими способами:

  • Отметьте проект звёздой
  • Поделитесь проектом spring-brick со своими друзьями
  • Посетите страницу проекта и нажмите кнопку "Поддержать", чтобы автор мог позволить себе немного вкусняшек Поддержка spring-brick

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/starblues-springboot-plugin-framework-parent.git
git@api.gitlife.ru:oschina-mirror/starblues-springboot-plugin-framework-parent.git
oschina-mirror
starblues-springboot-plugin-framework-parent
starblues-springboot-plugin-framework-parent
master