比如, 我在导入的Druid依赖后 Spring boot自动装配 在容器中注入的bean
然后 我自定义注入了一个bean
此时容器中应该存在两个DruiDataSource类型的bean
我getBean按照类型获取,存在两个类型相同的bean为什么不会报错?
比较疑惑,有没有大佬解答
比如, 我在导入的Druid依赖后 Spring boot自动装配 在容器中注入的bean
然后 我自定义注入了一个bean
此时容器中应该存在两个DruiDataSource类型的bean
我getBean按照类型获取,存在两个类型相同的bean为什么不会报错?
比较疑惑,有没有大佬解答
15 回答8.3k 阅读
8 回答6.2k 阅读
4 回答4.4k 阅读✓ 已解决
4 回答3.9k 阅读
3 回答3.6k 阅读✓ 已解决
1 回答2.7k 阅读✓ 已解决
3 回答2.1k 阅读✓ 已解决
因为你在说
我在导入的Druid依赖后 Spring boot自动装配 在容器中注入的bean
,所以默认你使用的是druid-spring-boot-starter
。然后,
https://github.com/alibaba/druid/blob/master/druid-spring-boot-starter/src/main/java/com/alibaba/druid/spring/boot/autoconfigure/DruidDataSourceAutoConfigure.java
源码这里@ConditionalOnMissingBean
只有你未设置DataSource
时才会生效。所以,你说的
此时容器中应该存在两个DruiDataSource类型的bean
是错误的。