Spring Framework поддерживает Dependency Injection (DI) не только отдельных объектов, но и коллекций объектов. Это позволяет тебе внедрять несколько значений в одно свойство через XML-конфигурацию.
Spring предоставляет четыре основных тега для внедрения коллекций:
<list> — используется для внедрения упорядоченных коллекций, где дубликаты разрешены<set> — используется для внедрения неупорядоченных коллекций, где дубликаты не допускаются<map> — используется для внедрения пар ключ-значение, где и ключи, и значения могут быть любого типа<props> — используется для внедрения строковых пар ключ-значение, аналогично .properties-файлам<bean id="myBean" class="com.example.MyClass">
<property name="items">
<list>
<value>Item1</value>
<value>Item2</value>
</list>
</property>
<property name="uniqueItems">
<set>
<value>Value1</value>
<value>Value2</value>
</set>
</property>
<property name="configurations">
<map>
<entry key="key1" value="value1"/>
<entry key="key2" value="value2"/>
</map>
</property>
<property name="settings">
<props>
<prop key="timeout">30</prop>
<prop key="retry">3</prop>
</props>
</property>
</bean>
Используя эти теги для внедрения коллекций, ты можешь декларативно управлять сложными зависимостями объектов прямо в конфигурации Spring — это делает архитектуру чище и проще в поддержке.
Тег <set> в Spring XML конфигурации позволяет вводить неупорядоченные коллекции и автоматически удаляет дубликаты значений при инъекции.
Новый — ещё не проверен сообществом
Вы