0
我用了名,创建由配置豆弹簧引导创建了名称豆会导致“NoSuchBeanDefinitionException,没有类型的排位豆[]发现依赖”
@Configuration
@ConfigurationProperties(prefix = "mysql")
public class DbConfiguration extends BaseDbConfiguration {
@Bean//(name = "fix")
@Override
public DbClient createClient() {
return super.createClient();
}
}
用法:
@Autowired
private DbClient dbClient;
当我运行的应用程序无法启动
,并抛出NoSuchBeanDefinitionException:
找不到符合依赖关系的[DbClient]类型的合格bean:期望至少1个符合此依赖关系自动装配候选资格的bean。 依赖注释:{@ org.springframework.beans.factory.annotation.Autowired(required = true)}
但是我通过添加名称来解决它,为什么?
@Bean(name = "fix")
我还添加了一个测试,例如像这样:
public class TestCreate {
@NotNull
private int test;
public Test createTest() {
return new Test(this.test);
}
}
它的配置是这样的:
@Configuration
@ConfigurationProperties(prefix = "test")
public class TestConfiguration extends TestCreate {
@Override
@Bean
public Test createTest() {
return super.createTest();
}
}
与自动装配这样的:
@Autowired
private Test test;
然而,这测试可能效果不错
它还没有名字和自动装配Autowired创建豆用了预选赛
请告诉我为什么....感谢