Некоторое время назад я написал некоторый универсальный синтаксический анализатор, который мог обрабатывать разные форматы входных файлов.
class XmlFormat extends Format {
// format stuff
// ...
}
class Parser {
Format format;
public Parser(Format format) {
this.format = format;
}
// parsing goes here
// ...
}
Затем я сказал Spring, какое описание формата должно было использоваться.(Отказ от ответственности: ваш конфиг Spring может иметь совсем другой стиль.)
<bean id="forma1" class="com.mycompany.XmlFormat" />
<bean id="parser" class="com.mycompany.Parser">
<constructor-arg ref="format1">
</bean>
Так что теперь, когда я хотел, чтобы Spring дал мне Parser
, он ввел XmlFormat
в конструктор для меня.