Руководство по Spring. Наследование бинов.

Как мы уже видели, определение бина может содержать множество различных конфигураций (конструктор, методы инициализации и уничтожения и т.д.).

Наследованием (когда мы говорим о бинах) называется ситуация, когда “бин-потомок” перенимает (наследует) конфигурационные данные от своего “бина-родителя”. Бин-наследник может переопределять (override) некоторые унаследованные свойства и добавлять свои собственные, если это потребуется.

При этом важно учитывать тот факт, что наследование бинов в Spring не имеет ничего общего с наследованием классов в Java. Сам принцип наследование, тем не менее, остаётся тем же.

Другими словами, Вы можете определить некий шаблонный бин и, наследуюясь от него, добавлять необходимый функционал в “бины-потомки”.

Когда мы конфигурируем приложение с помощью XML файлов, мы используем свойство “parent”, указывая, при этом, “бин-родитель”.

Всё это будет намного проще понять, посмотрев небольшой пример с использованием наследования бинов.

Пример приложения:

Исходный код проекта можно скачать по ЭТОЙ ССЫЛКЕ.

Структура проекта

inheritanceStructure

Класс Message.java

InheritanceMessage

Класс MessageToYou.java

InheritanceMessageToYou

Класс MessageInheritanceRunner.java

InheritanceMessageRunner

Конфигурационный файл inheritance-message-config.xml

inheritance-message-config

Результат работы программы

InheritanceMessageRunnerResult

Сегодня мы ознакомились с основами наследования бинов в Spring.