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. javascript - DOM中,获取属性2. javascript - mongoose对查询结果的排序问题3. node.js - node exec 执行没反应4. linux - 新手-----nginx怎么配置请求转发?5. css - 为什么video不能填满整个父级div?底部有黑边?6. java - android代码重构:如何把app设置里的头像UI做成通用的?7. java - 一个泛型标签问题8. android - 安卓做前端,PHP做后台服务器 有什么需要注意的?9. javascript - JAVA后台怎么设置表头的宽度10. java - 哪位大神做过考勤打卡定位功能?请大神指点

网公网安备