Spring Framework (или коротко Spring) — универсальный фреймворк с открытым исходным кодом для Java-платформы.
Модули Spring Framework Inversion of Control-контейнер - управление жизненным циклом Java-объектов. Фреймворк аспектно-ориентированного программирования: работает с функциональностью, которая не может быть реализована возможностями объектно-ориентированного программирования на Java без потерь. Фреймворк доступа к данным: работает с системами управления реляционными базами данных на Java-платформе. Фреймворк управления транзакциями Фреймворк MVC: каркас, основанный на HTTP и сервлетах
Фреймворк удалённого доступа: конфигурируемая передача Java-объектов через сеть в стиле RPC, поддерживающая RMI, CORBA,
Фреймворк работы с сообщениями: конфигурируемая регистрация объектов-слушателей сообщений для прозрачной обработки сообщений из очереди сообщений с помощьюJMS, улучшенная отправка сообщений по стандарту JMS API. Тестирование.
Инверсия управления (Inversion of Control, IoC) — важный принцип объектно-ориентированного программирования, используемый для уменьшения связанности в компьютерных программах.
Формулировка:
* Модули верхнего уровня не должны зависеть от модулей нижнего уровня. Оба должны зависеть от абстракции.
Абстракции не должны зависеть от деталей. Детали должны зависеть от абстракций.