2017-06-27 157 views
1

我需要一些幫助來創建Aspect bean。春天。註冊@Bean方面

我有模塊AB ...和模塊starter-x。 我在模塊starter-x中聲明瞭幾個方面,以及它們的配置(如彈簧數據存儲庫監視方面,配置註釋爲@ConditionalOnClass(Repository.class)等)。

這裏的示例配置的樣子

@Configuration 
@ConditionalOnClass(Repository.class) 
public class RepositoryMonitoringConfiguration { 

    @Bean 
    @Qualifier("RepositoryCallCounter") 
    public DatabaseCallCounter repositoryCounter(){ 
     return new RepositoryCallCounter(); 
    } 


} 

我必須跟@Aspect註解類(但不@Component,當我與@Component@Configuration創建豆,一切正常)

所以我的問題,是否有可能在@Configuration類別中提供aspect bean,但不包含@Component註釋(我想創建具有自動配置的冷啓動器)

+0

有條件的'@ ComponentScan'可能是要走的路。 – chrylis

回答

0

這是可能的,你只需要像這樣標記配置類:

@Configuration 
@EnableAspectJAutoProxy 
@ConditionalOnClass(Repository.class) 
public class RepositoryMonitoringConfiguration { 

    @Bean 
    public DatabaseCallCounter repositoryCounter(){ 
    return new RepositoryCallCounter(); 
    } 
} 
+0

對不起,但那不起作用:( –

+0

爲什麼你在沒有參數的bean創建中設置@Qualifier ??? – nekperu15739

+0

https://stackoverflow.com/questions/44728998/spring-mvc-with-aspectj – nekperu15739