У меня есть два класса, которые я хочу связать с помощью Spring
@Component
public class Restaurant {
@Autowired
@Qualifier("HighClass")
private CoffeeMaker coffeeMaker;
}
а также:
public class CappuccinoMaker implements CoffeeMaker{
@Autowired
@Qualifier("HighClass")
int numOfSpoons;
}
Затем впрыскивание:
@Bean(name="HighClass")
@Scope("prototype")
public CoffeeMaker HighClassCoffeeMakerGenerator() {
return new CappuccinoMaker();
}
@Bean(name="HighClass")
public int getNumOfSpoons() {
return 3;
}
Я хотел бы квалифицировать как int, так и CoffeeMaker с помощью «HighClass». В Guice можно аннотировать разные типы одной и той же аннотацией и правильно их вводить.
Вроде как весной это не разрешено. Когда я пытаюсь ввести поля, я получаю сообщение об ошибке, что требуемый компонент не найден. Я что-то пропустил?