Repolode
TAKETODAY

TAKETODAY/today-infrastructure

Модульный фреймворк для Java с внедрением зависимостей, автоконфигурацией, Web MVC, HTTP-сервером на Netty и средствами доступа к данным, вдохновлённый Spring.

Звёзды
132
Форки
14
Открытые issues
22
Последний коммит
11 часов назад

Что это?

TODAY Infrastructure — библиотека для Java, предназначенная для создания веб-приложений и приложений общего назначения. В её состав входит IoC-контейнер с внедрением зависимостей, сканированием компонентов и callback-методами жизненного цикла бинов, а также слой AOP с advisors, прокси и перехватом вызовов методов.

Для веб-разработки доступны MVC-маршрутизация запросов, привязка параметров, обработка исключений, поддержка WebSocket и веб-сервер на Netty. Модули доступа к данным охватывают JDBC, транзакции и персистентность. Дополнительные модули поддерживают Jackson, Gson, JSON-B, Protobuf, шаблоны и почту. Их можно подключать по отдельности с помощью артефактов `infra-starter-*` или использовать на более низком уровне через модули `infra-*`.

Для работы проекта требуется Java 17 или новее. Он появился как результат изучения автором внутреннего устройства Spring; названия пакетов, координаты и модель запуска проекта не зависят от Spring, поэтому совместимость с компонентами экосистемы Spring не предполагается.

Ключевые возможности

  • 01IoC-контейнер с внедрением зависимостей, сканированием компонентов и callback-методами жизненного цикла
  • 02Поддержка AOP с advisors, созданием прокси и перехватом вызовов методов
  • 03Web MVC с маршрутизацией запросов, привязкой параметров и обработкой исключений
  • 04Веб-сервер на Netty с поддержкой WebSocket
  • 05Модули JDBC, транзакций и персистентности
  • 06Дополнительные стартеры для JSON, шаблонов, почты и Protobuf

Сценарии использования

  • Изучение реализации IoC-контейнеров, AOP и веб-фреймворков на Java
  • Создание лёгкого веб-сервиса на Java с использованием Netty
  • Эксперименты с модульным фреймворком как альтернативой Spring Boot для небольших проектов

Быстрый старт

  1. 1

    Установите Git и JDK 17 или новее

  2. 2

    Клонируйте репозиторий

    git clone https://github.com/TAKETODAY/today-infrastructure.git
  3. 3

    Перейдите в каталог samples

    cd today-infrastructure/infra-samples
  4. 4

    Запустите тестовый сервер на порту 8080 (в Windows используйте gradlew.bat)

    ./gradlew infraRun --args='--server.port=8080'

Что важно знать

  • В README говорится, что Spring Boot — более безопасный выбор, если вам нужна зрелая экосистема, множество сторонних стартеров или коммерческая поддержка.
  • Это не бинарно совместимая замена Spring, поэтому компоненты экосистемы Spring могут не работать напрямую.
  • В README говорится, что в production проект в основном использует его автор, а некоторые модули, например JMS, R2DBC и WebFlux, не портированы.

В подборках

Темы

Частые вопросы

Что такое today-infrastructure?
Модульный фреймворк для Java с внедрением зависимостей, автоконфигурацией, Web MVC, HTTP-сервером на Netty и средствами доступа к данным, вдохновлённый Spring. TODAY Infrastructure — библиотека для Java, предназначенная для создания веб-приложений и приложений общего назначения. В её состав входит IoC-контейнер с внедрением зависимостей, сканированием компонентов и callback-методами жизненного цикла бинов, а также слой AOP с advisors, прокси и перехватом вызовов методов.
today-infrastructure можно использовать бесплатно? Какая у него лицензия?
today-infrastructure распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
today-infrastructure всё ещё поддерживается?
Активно поддерживается. Последний коммит в today-infrastructure — 22 окт. 2026 г..
Для чего можно использовать today-infrastructure?
Изучение реализации IoC-контейнеров, AOP и веб-фреймворков на Java Создание лёгкого веб-сервиса на Java с использованием Netty Эксперименты с модульным фреймворком как альтернативой Spring Boot для небольших проектов
Как установить today-infrastructure?
Установите Git и JDK 17 или новее Клонируйте репозиторий: git clone https://github.com/TAKETODAY/today-infrastructure.git Перейдите в каталог samples: cd today-infrastructure/infra-samples Запустите тестовый сервер на порту 8080 (в Windows используйте gradlew.bat): ./gradlew infraRun --args='--server.port=8080'
Где скачать today-infrastructure?
Исходный код и инструкции по установке — на GitHub: https://github.com/TAKETODAY/today-infrastructure

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

PHP-фреймворк для веб-приложений с выразительным синтаксисом: маршрутизация, ORM, миграции, очереди и трансляция событий в реальном времени.

85,2 тыс.27,6 тыс.BladeБез лицензииОбновлён 8 дней назад