Возможно ли присвоить значение @Qualifier во время выполнения. Скажем, у меня есть два фасоли одного и того же типа и класса с инъекцией зависимостейЗначение значения Spring @Qualifier во время выполнения
<bean id="typeA" class="com.debopam.test.Type">
<property name="typevalue" value="Export" />
</bean>
<bean id="typeB" class="com.debopam.test.Type">
<property name="typevalue" value="Import" />
</bean>
public class Product {
private Integer price;
private String name;
@Autowired
@Qualifier("typeB")
private Type type;
public Integer getPrice() {
return price;
}
public void setPrice(Integer price) {
this.price = price;
}
public Type getType() {
return type;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
Есть ли способ определить тип в классе продукта во время выполнения вместо жесткого кодирования/с указанием значения? Если да, можете ли вы отправить какой-либо код, в противном случае целесообразно использовать ApplicationContext.getBean («bean name») для загрузки компонента во время выполнения?
Посмотрите на это http://stackoverflow.com/questions/25590435/how-to-set-a-bean-qualifier -name-at-run-time-in-spring – Michael
Возможный дубликат [Spring Qualifier и заполнитель свойств] (http://stackoverflow.com/questions/7812745/spring-qualifier-and-property-placeholder) –