package one.two.three;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class ConfigurationClass {
@Bean
Car getBean(int plate) {return new Car(plate);}
@Bean
Car getBean() {return new Car();}
@Bean
Car getBean(String name,int plate) {return new Car(name,plate);}
@Bean
Maruti getMaruti(int plate){
return new Maruti(plate);
}
}
在你的
@Bean
中传递一个参数,它被称为限定符,就像这样@Bean("MyCarBean")
一样,当你想要将汽车传递给时,你必须用@Qualifier("MyCarBean")
来注释它。这样做可以解决您的问题
另外,以下链接将为您提供有关此问题的更多信息。 https://www.baeldung.com/spring-same-class-multiple-beans
编辑:你所做的将不起作用,因为 beans 参数也是 beans 并且你无法控制它们。因此,除非您为类型
int
和 String
定义另一个 bean,否则它将无法获取您传递的那些参数的值