如何选择导入Spring托管组件?

时间:2014-06-20 07:43:39

标签: java spring

我创建了一个自定义API jar库,我想提供一些常用的服务。

但是我想在我的实施项目中选择使用和自动装配其中一些服务。它们不应该自动自动装配。

如何明确指出Spring包含以下StatsLogger

API jar:

package my.spring.config

//@Component
public class MyStatsLogger {

    @Autowired
    private MyService someOtherServiceForLogging;

    @Scheduled(fixedDelay = 60000) 
    public void log() {
        //logging
    }   
}

IMPL项目:

@Configuration
@EnableScheduling
public class AppConfig {

}

2 个答案:

答案 0 :(得分:1)

只需将服务添加到您的上下文中:

@Configuration
@EnableScheduling
public class AppConfig {
    @Bean
    public MyStatsLogger myStatsLogger() {
        return new MyStatsLogger();
    }
}

答案 1 :(得分:1)

由于MyStatsLogger有一个默认构造函数,所以您只需要:

@Configuration
@EnableScheduling
public class AppConfig {


    @Bean
    public MyStatsLogger myStatsLogger() {
       return new MyStatsLogger();
    }
}

如果声明了MyService类型的bean,那么MyStatsLogger中的MyService依赖项将自动由Spring连接。