У меня есть следующее поле, называемое someMap, в которое мне нужно добавить карту во время выполнения, в зависимости от полученных данных.
Я пытался использовать аннотацию @Resource
, но она тесно связана с beanId, указанным в файле xml.
@Resource(name="someMap")
private final Map<String,String> someMap;
<bean id="someMap" class="java.util.HashMap">
<constructor-arg>
<map>
<entry key="Engraving1" value="@Engraving1" />
<entry key="Engraving2" value="@Engraving2" />
<entry key="Engraving3" value="@Engraving3" />
<entry key="LeaveBlank" value="@LeaveBlank" />
</map>
</constructor-arg>
</bean>
<bean id="someOtherMap" class="java.util.HashMap">
<constructor-arg>
<map>
<entry key="Descirption" value="@Desc" />
<entry key="Engraving2" value="@Engraving2" />
<entry key="Engraving3" value="@Engraving3" />
<entry key="UniqueId" value="$60034" />
</map>
</constructor-arg>
</bean>
То, что я хочу, это избавиться от этой тесной связи и инициализировать поле someMap для другой разновидности карты, определенной весной xml, скажем, someOtherMap