java - 为什么@Import引入一个config不能使用这个config中@Bean注解的方法?
问题描述
@Configurationpublic class CDPlayerConfig { @Bean public CompactDisc sgtPeppers(){return new SgtPeppers(); }@Bean public CDPlayer cdPlay(){return new CDPlayer(sgtPeppers()); }}
这个是能执行的
把
@Beanpublic CompactDisc sgtPeppers(){ return new SgtPeppers();}
放到另一个配置文件中,然后通过@Import引入
@Configurationpublic class CDConfig { @Bean public CompactDisc sgtPeppers(){return new SgtPeppers(); }}
引入外部的配置文件
@Configuration@Import(CDConfig.class)public class CDPlayerConfig { @Bean public CDPlayer cdPlay(){return new CDPlayer(sgtPeppers()); }}
就找不到这个method
问题解答
回答1:基本概念错误,sgtPeppers()是调用本类的方法,没有定义当然编译错误,和spring无关。这么改:
@Configuration@Import(CDConfig.class)public class CDPlayerConfig { @Bean public CDPlayer cdPlay(CompactDisc cd){return new CDPlayer(cd); }}回答2:
理解有误
可以使用 @Bean @Qualifier配合
相关文章:
1. php - 如何讓網頁能支援emoji顯示?2. html5 - 求详解h5 video事件监听3. docker 17.03 怎么配置 registry mirror ?4. mysql - sql 怎么根据父id查询下三级子集?5. angular.js - angular post的Content-Type被设置,导致不能上传图片,求助!!6. android - webview 自定义加载进度条7. android - viewpager内部壳套fragment横向滑动。黑屏之后打开出现重叠现象,只有一个fragment,我复用的。望大神解答8. javascript - 如何判断不同两个对象触发同一事件?9. javascript - 回调函数和闭包的关系10. python中生产者消费者线程问题

网公网安备